eval
Syntax
mixed eval ( string code_str )
Popis
Príkaz jazyka PHP
eval -- Vyhodnotí řetězec jako PHP kód
eval() vyhodnotí řetězec předaný v code_str jako PHP kód. Kromě jiného se dá využít na ukládání kódu v textovém sloupci databáze pro pozdější vykonání.
Při používání eval() byste měli mít na paměti několik faktorů. Pamatujte si, že předávaný řetězec musí být platný PHP kód, včetně věcí jako ukončování výrazů středníkem, aby parser nezemřel na řádku po eval(), a řádné escapování v code_str.
Také pamatujte, ze hodnoty přiřazené proměnným v eval() těmto proměnným zůstanou i v hlavním skriptu.
Výraz return okamžitě ukončí vyhodnocování předaného řetězce. V PHP 4 můžete použít return k vrácení hodnoty, která se stane výsledkem eval() funkce, zatímco v PHP 3 byl eval() typu void nic nevracel.
Príklad
<?php
$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.<br>';
echo $str;
eval ("\$str = \"$str\";");
echo $str;
/*uvedený příklad ukáže:
This is a $string with my $name in it.
This is a cup with my coffee in it.
*/
?>
$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.<br>';
echo $str;
eval ("\$str = \"$str\";");
echo $str;
/*uvedený příklad ukáže:
This is a $string with my $name in it.
This is a cup with my coffee in it.
*/
?>