Forum und email

exec

(PHP 4, PHP 5)

exec — Führt ein externes Programm aus

Beschreibung

string exec ( string $befehl [, array $ausgabe [, int $return_var ]] )

exec() führt ein gegebenen Befehl aus, ohne eine Ausgabe zu erzeugen. Die Funktion gibt lediglich die letzte Zeile aus dem Befehlsergebnis zurück. Wenn Sie auf die direkte Rückgabe/ Ausgabe eines Befehls angewiesen sind, dann benutzen Sie stattdessen die Funktion passthru().

Ist der Parameter array angegeben, wird dieses mit jeder Zeile des Befehlsausgabe gefüllt. Beachten Sie, dass wenn das Array schon Elemente enthält, die Funktion exec() die Ausgabe an das Array anhängt. Wenn Sie dieses nicht wünschen, rufen Sie die Funktion unset () für das Array auf, bevor Sie es als Parameter der Funktion exec() übergeben.

Ist der Parameter return_var angegeben, so wird der Rückgabestatus des ausgeführten Befehls in diese Variable geschrieben.

Beachten Sie, dass wenn Sie Benutzereingaben an diese Funktion übergeben, diese mit escapeshellcmd() behandelt, um sicherzustellen, dass niemand mit willkürlichen Befehlen Ihrem System Schaden zufügen kann.

Beachten Sie auch, dass wenn Sie ein Programm mit dieser Funktion starten und Sie es im Hintergrund laufen lassen möchten, Sie sicherstellen müssen, dass die Ausgabe des Programms in eine Datei oder anderenen Ausgabestream umgeleitet wird. Andernfalls wird PHP solange laufen, bis das Programm beendet ist.

Siehe auch: system(), passthru(), popen(), escapeshellcmd() und den Backtick Operator.