Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

system

Funktionen zur Programmausführung

    Befehl:
string system ( string $command [, int &$return_var ] )


    Parameter-Liste:
NameBeschreibung
commandDas auszuführende Kommando.
return_varIst das return_var-Argument angegeben, wird der Rückgabewert des ausgeführten Befehls in diese Variable geschrieben.

    Beschreibung:
Die Funktion system() ähnelt der C Version der Funktion sehr, indem es einen übergebenen Befehl ausführt und dessen Ausgabe anzeigt.

Wird ein system()-Funktionsaufruf durchgeführt, versucht die Funktion automatisch, nach jeder Ausgabezeile den Ausgabepuffer zu flushen, sofern PHP als Servermodul läuft.

Wenn Sie einen Befehl ausführen wollen und die erzeugten Daten ohne Behinderung direkt zurückgeben wollen, verwenden Sie stattdessen die Funktion passthru().


    Aktiv in Version:
(PHP 4, PHP 5, PHP 7)

    Hinweis:
Hinweis:

Falls Sie diese Funktion benutzen, um ein Programm zu starten und im Hintergrund weiterlaufen lassen möchten, müssen Sie sicherstellen, dass die Ausgabe des Programms in eine Datei oder einen anderen Ausgabestream umgeleitet wird. Anderenfalls wird PHP solange hängen, bis das Programm zu Ende ausgeführt wurde.

Mit aktiviertem Safe Mode können Sie nur Programme ausführen, die im Verzeichnis liegen, das mit safe_mode_exec_dir angegeben wurde. Aus praktischen Gründen ist es gegenwärtig nicht erlaubt, dass der Pfad zu einem Programm .. enthält.


    Warnung:
Warnung:

Falls Sie es erlauben, dass Daten von Usereingaben an diese Funktion weitergereicht werden, sollten Sie escapeshellarg() oder escapeshellcmd() verwenden. Bei Verwendung dieser Funktionen stellen Sie sicher, dass kein Benutzer Ihr System überlisten kann, beliebige Kommandos auszuführen

Mit aktiviertem Safe Mode wird der Kommandostring mit escapeshellcmd() kodiert. Deshalb wird echo y | echo x zu echo y \| echo x.


    Siehe auch:
•  exec()
Führt ein externes Programm aus
 
Führt ein externes Programm aus und zeigt dessen Ausgabe an
 
•  popen()
Öffnet einen Prozesszeiger
 
Maskiert Shell-Metazeichen
 
Führt ein angegebenes Programm im aktuellen Prozessraum aus
 

system() - Beispiel:



Eingabe:
<?php
echo '<pre>';

// Gibt das gesamte Ergebnis des Shellkommandos "ls" aus und hält als
// Rückgabewert die letzte Zeile dieser Ausgabe in $last_line. Der
// Rückgabewert des Shellkommandos wird in $retval gespeichert.
$last_line = system('ls', $retval);

// Ausgeben zusätzlicher Informationen
echo '
</pre>
<hr />Letzte Zeile der Ausgabe: ' . $last_line . '
<hr />Rückgabewert: ' . $retval;
?>


Funktionen zur Programmausführung