Maison  >  Article  >  développement back-end  >  Présentez brièvement la méthode de dépannage pour la fonction exec() de PHP sans valeur de retour (recommandé)

Présentez brièvement la méthode de dépannage pour la fonction exec() de PHP sans valeur de retour (recommandé)

黄舟
黄舟original
2017-04-01 09:13:261566parcourir

L'éditeur suivant vous proposera une brève discussion sur la fonction exec() de PHP méthode de dépannage sans valeur de retour (à lire absolument). L'éditeur pense que c'est plutôt bien, alors je vais le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur pour jeter un œil

En sécuritéImagemagic doit utiliser exec sur de nombreux serveursInstallationéchec

exec() s'exécute en externe. la commande a échoué sans aucun message d'erreur.

Exec exécute une certaine commande sans aucun problème sur la ligne de commande, mais une erreur se produit dans php. Ce problème est lié à 99,99% aux autorisations, mais la commande exécutée par exec ne renverra pas d'erreur. Une astuce consiste à utiliser des commandes pipe, en supposant que votre appel exec est le suivant :

exec('convert a.jpg b.jpg', $output, $return_val);

peut être modifié comme suit :

exec('convert a.jpg b.jpg 2>&1', $output, $return_val); 


print_r($output);

en utilisant 2>&1, la commande affichera l'erreur lors de l'exécution du shell vers la $outputvariable et affichera la variable à analyser.

Remarques : exec a 3 paramètres. Le premier est la commande à exécuter. Le deuxième paramètre est un tableau. , Le troisième paramètre exécute le statut , 0 indique le succès, les autres indiquent l'échec.

Il existe trois fonctions en php qui peuvent être utilisées pour exécuter des commandes externes système, exec et passthru.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
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