Maison développement back-end tutoriel php PHP中exec与shell_exec函数区别_PHP教程

PHP中exec与shell_exec函数区别_PHP教程

Jul 20, 2016 am 11:03 AM
exec linux php shell différent et 函数 区别 命令 执行 Oui de 获取 retour

这两个函数都是执行Linux命令函数,不同的是获取返回结果不一样,exec只能获取最后一行数据,shell_execu则可以获取全部数据。  

假如脚本路径下有如下文件

-bash-4.1# ll
总用量 12
-rw-rw-r--. 1 www web 133  7月 16 15:00 a.php
-rw-r--r--. 1 lee web  59  2月 29 17:05 b.php
-rw-r--r--. 1 lee web  81  3月  8 17:00 c.php

先看一下php手册对这二个函数的解释:

exec --- 执行外部程式

  语法 : string exec ( string command [, array &output [, int &return_var]] )

  说明 :

  exec( )执行给予的命令command,不过它并不会输出任何东西,它简单的从命令的结果中传回最后一行,如果你需要去执行一个命令,并且从命令去取得所有资料时,可以使用passthru( )这个函数。

  如果有给予参数array,则指定的数组将会被命令所输出的每一行填满,注意 : 如果数组先前已经包含了一些元素的话,exec( )将会把它附加在数组的后面,如果你不想要此函数附加元素的话,你可以在传递此数组给exec( )之前呼叫unset( )。


exec例子

 代码如下 复制代码

/**
 * exec与shell_exec的区别
 * 琼台博客
 */
$data = exec('/bin/ls -l');
echo '

	'; 
print_r($data); 
echo '
Copier après la connexion
Copier après la connexion
';
?>

 

执行结果

 
-rw-r--r--. 1 lee web  81 Mar  8 17:00 c.phpshell_exec例子

shell_exec()

  shell_exec() 命令行实际上仅是反撇号 (`) 操作符的变体。如果您编写过 shell 或 Perl 脚本,您就知道可以在反撇号操作符内部捕捉其他命令的输出。例如,清单 1 显示了如何使用反撇号在当前目录中获取每个文本(.txt)的单词计数。


在 shell_exec()
中运行相同的命令

 代码如下 复制代码


$results
=
shell_exec
(
'
wc -w *.txt
'
)
;

echo

$results
;

?>

在图 1 中可以看到,获得的结果与从 shell 脚本得到的一样

exec与shell_exec的区别

 

 代码如下 复制代码
/**
 * 
 * 琼台博客
 */
$data = shell_exec('/bin/ls -l');
echo '
	'; 
print_r($data); 
echo '
Copier après la connexion
Copier après la connexion
';
?>

执行结果

 total 12
-rw-rw-r--. 1 www web 139 Jul 16  2012 a.php
-rw-r--r--. 1 lee web  59 Feb 29 17:05 b.php
-rw-r--r--. 1 lee web  81 Mar  8 17:00 c.php所以平时使用exec函数的童鞋注意了,如果你需要获取全部返回信息,就应该使用shell_exec函数,当然,如果命令执行结果只有一行返回信息,那么使用哪个都无所谓


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/445295.htmlTechArticle这两个函数都是执行Linux命令函数,不同的是获取返回结果不一样,exec只能获取最后一行数据,shell_execu则可以获取全部数据。 假如脚本路...
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Entrée de la version Web Deepseek Entrée du site officiel Deepseek Entrée de la version Web Deepseek Entrée du site officiel Deepseek Feb 19, 2025 pm 04:54 PM

Deepseek est un puissant outil de recherche et d'analyse intelligent qui fournit deux méthodes d'accès: la version Web et le site officiel. La version Web est pratique et efficace et peut être utilisée sans installation; Que ce soit des individus ou des utilisateurs d'entreprise, ils peuvent facilement obtenir et analyser des données massives via Deepseek pour améliorer l'efficacité du travail, aider la prise de décision et promouvoir l'innovation.

Comment installer Deepseek Comment installer Deepseek Feb 19, 2025 pm 05:48 PM

Il existe de nombreuses façons d'installer Deepseek, notamment: Compiler à partir de Source (pour les développeurs expérimentés) en utilisant des packages précompilés (pour les utilisateurs de Windows) à l'aide de conteneurs Docker (pour le plus pratique, pas besoin de s'inquiéter de la compatibilité), quelle que soit la méthode que vous choisissez, veuillez lire Les documents officiels documentent soigneusement et les préparent pleinement à éviter des problèmes inutiles.

Deepseek Quelle est la différence entre la version R1 et V3 Deepseek Quelle est la différence entre la version R1 et V3 Feb 19, 2025 pm 03:24 PM

Deepseek: Une comparaison approfondie entre les versions R1 et V3 vous aide à choisir le meilleur assistant d'IA! Deepseek compte déjà des dizaines de millions d'utilisateurs et sa fonction de dialogue AI a été bien accueillie. Mais êtes-vous confus lorsque vous faites face aux versions R1 et V3? Cet article expliquera les différences entre les deux en détail pour vous aider à choisir la version la plus appropriée. La différence de base entre DeepseEkr1 et V3 version: dispose de l'objectif de conception de la version V3 se concentre sur le raisonnement de problèmes complexe, l'analyse logique profonde, le modèle multifonctionnel de grande langue, en se concentrant sur l'évolutivité et l'architecture d'efficacité et l'architecture d'optimisation d'apprentissage du renforcement des paramètres, l'échelle de paramètre 1.5 Des milliards à 70 milliards d'architecture d'experts hybrides MOE, les paramètres totaux sont élevés que 671 milliards, chaque jeton est activé de 37 milliards

Résumé des FAQ pour une utilisation profonde Résumé des FAQ pour une utilisation profonde Feb 19, 2025 pm 03:45 PM

Deepseekai Tool User Guide et FAQ Deepseek est un puissant outil intelligent AI. FAQ: La différence entre les différentes méthodes d'accès: il n'y a pas de différence de fonction entre la version Web, la version de l'application et les appels API, et l'application n'est qu'un wrapper pour la version Web. Le déploiement local utilise un modèle de distillation, qui est légèrement inférieur à la version complète de Deepseek-R1, mais le modèle 32 bits a théoriquement une capacité de version complète de 90%. Qu'est-ce qu'une taverne? SillyTavern est une interface frontale qui nécessite d'appeler le modèle AI via l'API ou le olllama. Qu'est-ce que la limite de rupture

Bitcoin a-t-il des actions? Bitcoin a-t-il des actions? Mar 03, 2025 pm 06:42 PM

Le marché des crypto-monnaies est en plein essor et Bitcoin, en tant que leader, a attiré l'attention de nombreux investisseurs. Beaucoup de gens sont curieux: Bitcoin a-t-il des actions? La réponse est non. Le Bitcoin lui-même n'est pas un stock, mais les investisseurs peuvent indirectement investir dans des actifs liés à Bitcoin via divers canaux, qui seront expliqués en détail dans cet article. Alternatives à l'investissement de Bitcoin: Au lieu d'investir directement dans Bitcoin, les investisseurs peuvent participer au marché Bitcoin par: Bitcoin ETF: Il s'agit d'un fonds négocié sur le marché des échanges d'actions, dont le portefeuille d'actifs contient des contrats à terme Bitcoin ou Bitcoin. Il s'agit d'une option relativement pratique pour les investisseurs habitués aux investissements en actions, sans avoir à tenir directement le bitcoin. Bitcoin Mining Company Stocks: Les activités de ces sociétés sont l'extraction de Bitcoin et tient le bitcoin

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Programme PHP pour compter les voyelles dans une chaîne Programme PHP pour compter les voyelles dans une chaîne Feb 07, 2025 pm 12:12 PM

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Installation officielle du site officiel de Bitget (Guide du débutant 2025) Installation officielle du site officiel de Bitget (Guide du débutant 2025) Feb 21, 2025 pm 08:42 PM

Bitget est un échange de crypto-monnaie qui fournit une variété de services de trading, notamment le trading au comptant, le trading de contrats et les dérivés. Fondée en 2018, l'échange est basée à Singapour et s'engage à fournir aux utilisateurs une plate-forme de trading sûre et fiable. Bitget propose une variété de paires de trading, notamment BTC / USDT, ETH / USDT et XRP / USDT. De plus, l'échange a une réputation de sécurité et de liquidité et offre une variété de fonctionnalités telles que les types de commandes premium, le trading à effet de levier et le support client 24/7.

See all articles