PHP
Referenzliste
popen
Dateisystem-Funktionen
Befehl:
resource popen ( string $command , string $mode )
Parameter-Liste:
Beschreibung | |
---|---|
Den Befehl | |
Der Modus |
Rückgabewerte:
Gibt einen Dateizeiger identisch mit der von fopen() zurück, ausser dass es unidirektional (nur zum Lesen oder Schreiben verwendet werden) und muss mit pclose() geschlossen werden. Dieser Zeiger kann mit fgets() , fgetss() und fwrite() verwendet werden. Wenn der Modus 'r' ist, entspricht der zurück-DateiZeiger auf den STDOUT des Befehls, wenn der Modus 'w', entspricht der zurückgegebene Dateizeiger auf den STDIN des Befehls.
Wenn ein Fehler auftritt, wird
Wenn ein Fehler auftritt, wird
FALSE
zurückgegeben. Beschreibung:
Mit popen() wird eine Verbindung zu einem Prozess geöffnet, welcher durch die Anweisung (command) im angegebenen Modus (mode) ausgeführt wird.
Folgende Werte sind für mode zulässig:
• r nur lesen
• w nur schreiben
Diese Funktion gibt wie fopen() einen Zeiger zurück, welcher weiter genutzt werden kann, etwa für Lese- und Schreiboperationen. Im Fehlerfall ist das Funktionsergebnis false.
Es ist darauf zu achten, dass der mit popen() geöffnete Dateizeiger mit pclose() wieder geschlossen wird.
Folgende Werte sind für mode zulässig:
• r nur lesen
• w nur schreiben
Diese Funktion gibt wie fopen() einen Zeiger zurück, welcher weiter genutzt werden kann, etwa für Lese- und Schreiboperationen. Im Fehlerfall ist das Funktionsergebnis false.
Es ist darauf zu achten, dass der mit popen() geöffnete Dateizeiger mit pclose() wieder geschlossen wird.
Aktiv in Version:
(PHP 4, PHP 5, PHP 7)
Hinweis:
Hinweis:
Wenn Sie für die bidirektionale Unterstützung suchen (Zweiweg), verwenden Sie proc_open().
Wenn Safe Mode aktiviert ist, können Sie nur Dateien ausführen innerhalb der safe_mode_exec_dir. Aus praktischen Gründen ist es momentan nicht erlaubt, .. Komponenten in der Pfad zur ausführbaren Datei.
Warnung:
Warnung:
Wenn der abgesicherten Modus aktiviert ist, wird der Befehl String mit escapeshellcmd(). So echo y | echo x wird echo y \| echo x.
Siehe auch:
popen() - Beispiel:
Eingabe:
<?php $handle = popen ("/bin/ls", "r"); ?>
popen() - Beispiel 2:
Eingabe:
Wenn das auszuführende Kommando nicht gefunden werden konnte, wird eine gültige Ressource zurückgegeben. Das mag seltsam erscheinen, macht aber Sinn. Es ermöglicht Ihnen, auf von der Shell zurückgegebene Fehlermeldungen zuzugreifen:
<?php error_reporting(E_ALL); /* Umleitung hinzufügen, dass wir stderr erhalten können */ $handle = popen('/path/to/spooge 2>&1', 'r'); echo "'$handle'; " . gettype($handle) . "\n"; $read = fread($handle, 2096); echo $read; pclose($handle); ?>
Dateisystem-Funktionen