Forum und email

Végrehajtó operátorok

A PHP-ban létezik egy program-végrehajtó operátor: a visszaidézőjel (backtick) [aki tudja az igazi nevét, ne rejtse véka alá!] (``). Ezek nem szimpla idézőjelek! A PHP megpróbálja a sztring tartalmát parancssorból futtatandó utasításként végrehajtani, amelynek a kimenete lesz az operátor értéke. Ez nem egyszerűen a kimenetre kerül, hanem hozzárendelhető egy változóhoz. A visszaidézőjel (backtick) operátor azonos a shell_exec() függvénnyel.

[Az alábbi kis példa az aktuális könyvtár tartalmát (hosszú lista, rejtett fájlok is) formázva írja ki (fix szélességű betűket használva, újsor karaktereket tiszteletben tartva)]

<?php
$output 
= `ls -al`;
echo 
"<pre>$output</pre>";
?>

Note: A végrehajtó operátor nem használható, ha a safe mode be van kapcsolva vagy amikor a shell_exec() függvény le van tiltva.

Lásd még a kézikönyv Programfuttató függvények című részét, popen() proc_open() függvényeket, valamint a Parancssori programozás a PHP-ben című fejezetet.