Forum und email

system

(PHP 4, PHP 5)

system — Führt ein externes Programm aus und zeigt dessen Ausgabe an.

Beschreibung

string system ( string $befehl [, int $return_var ] )

Die Funktion system() ähnelt der C Version der Funktion sehr, indem es einen übergebenen Befehl ausführt und dessen Ausgabe anzeigt. Wir als zweiter Parameter der Funktion eine Variable übergeben, so wird der Rückgabestatus des Befehls in diese 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.

Die system() Funktionsaufrufe versuchen übrigens automatisch nach jeder Ausgabezeile den Ausgabebuffer des Webservers zu flushen, wenn PHP als Servermodul läuft.

Gibt die letzte Zeile der Befehlsausgabe bei Erfolg, andernfalls FALSE zurück.

Wenn Sie auf die direkte Rückgabe/ Ausgabe eines Befehls angewiesen sind, dann benutzen Sie stattdessen die Funktion passthru().

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