Heim  >  Artikel  >  Backend-Entwicklung  >  Was soll ich tun, wenn PHP Exec den Wert nicht abrufen kann?

Was soll ich tun, wenn PHP Exec den Wert nicht abrufen kann?

藏色散人
藏色散人Original
2021-12-13 09:55:191667Durchsuche

Lösung für das Problem, dass PHP Exec den Wert nicht erhalten kann: 1. Öffnen Sie die entsprechende PHP-Codedatei. 2. Ändern Sie den Code in „exec('convert a.jpg b.jpg 2>&1', $output, $return_val; );" Das ist es.

Was soll ich tun, wenn PHP Exec den Wert nicht abrufen kann?

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.4, Dell G3-Computer.

Was soll ich tun, wenn PHP Exec den Wert nicht abrufen kann?

Fehlerbehebungsmethode für die Funktion exec() von PHP, die keinen Wert zurückgibt:

Zur Sicherheit von Imagemagic muss exec zur Installation verwendet werden und schlägt auf vielen Servern fehl.

exec() führt jedoch keine externen Befehle aus es gibt keine Fehlermeldung.

Exec führt einen bestimmten Befehl problemlos auf der Befehlszeile aus, aber in PHP tritt ein Fehler auf. Dieses Problem hängt zu 99,99 % mit Berechtigungen zusammen, aber der von exec ausgeführte Befehl gibt keinen Fehler zurück. Ein Trick besteht darin, einen Pipeline-Befehl zu verwenden. Angenommen, Ihr exec-Aufruf lautet wie folgt:

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

Verwenden Sie 2>&1, der Befehl gibt den Fehler während der Shell-Ausführung an die Variable $output aus und Geben Sie die zu analysierende Variable aus.

Hinweis: Der erste Parameter ist der auszuführende Befehl. Der Wert des Arrays wird nach der Ausführung des ersten Befehls generiert. 0 zeigt Erfolg an, andere weisen auf Misserfolg hin.

Es gibt drei Funktionen in PHP, die zum Ausführen externer Befehle System, Exec und Passthru verwendet werden können.

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn PHP Exec den Wert nicht abrufen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn