exec
proc_close
Funktionen zur Programmausführung
PHP Manual

# passthru

(PHP 4, PHP 5)

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

### Beschreibung

void passthru ( string `$command` [, int `&$return_var` ] )

Die Funktion passthru() ähnelt der Funktion exec(), da sie ebenfalls ein `command` ausführt. Diese Funktion sollte anstelle von exec() bzw. system() verwendet werden, wenn die Ausgabe des Unixkommandos binäre Daten erzeugt, die direkt an den Browser zurückgegeben werden sollen. Ein praktisches Beispiel hierfür ist die Ausführung des pbmplus-Utilities, welches einen Bildstream direkt ausgibt. Wenn Sie den Content-Type auf image/gif setzen und dann das pbmplus-Programm aufrufen, um ein GIF zu erzeugen, können Sie auf diesem Weg mittels PHP direkt ein Bild erzeugen und ausgeben.

### Parameter-Liste

`command`

  Das auszuführende Programm.

`return_var`

  Ist der Parameter `return_var` angegeben, wird der Rückgabestatus des UNIX-Befehls hier abgelegt.

### Rückgabewerte

Es wird kein Wert zurückgegeben.

### Anmerkungen

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

> 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.

> Hinweis: 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

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
- system() - Führt ein externes Programm aus und zeigt dessen Ausgabe an
- popen() - Öffnet einen Prozesszeiger
- escapeshellcmd() - Maskiert Shell-Metazeichen
- Backtick-Operator

exec
proc_close
Funktionen zur Programmausführung
PHP Manual