Forum und email

passthru

(PHP 4, PHP 5)

passthru — Külső programot futtat, és a kimenetet feldolgozás nélküli jeleníti meg

Leírás

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

A passthru() függvény hasonló az exec()-hez, ugyanis a command paraméterben megadott parancsot futtatja. Ez a függvény használható az exec() vagy a system() helyett, ha a parancs kimenete bináris adat, amit közvetlenül a böngészőnek kell visszaküldeni. Tipikusan például a pbmplus eszközök futtatására használható, amelyek képesek közvetlenül kép visszaadására. A Content-type fejlécet image/gif-re állítva és a pbmplus programot meghívva, az visszaad egy képet, és így olyan PHP programot írhatók, amelyek közvetlenül képeket adnak vissza.

Paraméterek

command

A végrehajtandó parancs.

return_var

Ha a return_var argumentum meg van adva, akkor a Unix parancs visszatérési állapota ide kerül.

Visszatérési értékek

Nincs visszatérítési érték.

Megjegyzések

Warning

Ha felhasználótól származó adatot kell átadni ennek a függvénynek, akkor előtte használd az escapeshellcmd() függvényt, annak biztosítására, hogy nem tudnak a felhasználók tetszőleges parancsot futtatni.

Note: Ezzel a függvénnyel elindított de háttérben futó program kimenetét mindenképpen fájlba vagy valamilyen más kimeneti csatornába kell átirányítani. Ellenkező esetben a PHP várakozni fog addig, amíg a program futása be nem fejeződik.

Note: Bekapcsolt safe_mode mellett csakis a safe_mode_exec_dir által megadott könyvtárban található állományok futtathatóak. Mindemellett a futtatható állomány megadásának útvonalában nem szerepelhet a .. elem.

Warning

Bekapcsolt safe_mode mellett minden, ami a nyitó parancs után következik, egy darab argumentumként lesz kezelve. Az echo y | echo x utasítás ez esetben tehát ilyenné alakul: echo "y | echo x".