Forum und email

escapeshellcmd

(PHP 4, PHP 5)

escapeshellcmd — Shell metakaraktereket alakít át

Leírás

string escapeshellcmd ( string $command )

Az escapeshellcmd() escape-et alkalmaz minden speciális karakterre, ami nem kívánt parancsok futtatását okozná. Ez a függvény arra használható, hogy biztosítsd a felhasználótól érkező adat tisztaságát egy exec() vagy egy system() függényhívásnál, vagy egy végrehajtó operátorban használnád. Általános használati forma:

A következő karaktereket visszaperjel (blackslash) előzi meg: #&;`|*?~<>^()[]{}$\, \x0A és \xFF. A ' és " csak akkor van levédve, ha nem párossával vannak. Windowson az összes előbbi karaktert és a %-ot szóközre cseréli.

Paraméterek

command

A parancs, amit le kell védeni.

Visszatérési értékek

A levédett string.

Példák

Example#1 escapeshellcmd() példa

<?php
// itt mindegy, hogy az $e tartalmaz-e szóközt
$e escapeshellcmd($parancs);
system("echo $e"); 
$f escapeshellcmd($filenev);
// itt viszont nem, ezért van idézőjelben
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\""); 
?>