eval

(PHP 3, PHP 4, PHP 5)

eval - вычисляет строку как PHP-код.

Описание

mixed eval ( string code_str)

eval() вычисляет строку, заданную в code_str, как код PHP. Помимо всего прочего, это может оказаться полезным для хранения кода в текстовом поле БД для последующего исполнения.

При использовании eval() необходимо помнить о нескольких вещах. Запомните, что передаваемая строка обязана быть правильным кодом PHP, включая окончание операторов точкой с запятой, чтобы разборщик не отвалил на строке после eval(), и правильное escap-ирование в code_str.

Также помните, что значения, заданные переменным в eval(), останутся действовать затем и в основном скрипте.

Оператор return завершит вычисление строки немедленно. В PHP 4 eval() возвращает FALSE, если не вызвана return() в вычисляемом коде, и в этом случае возвращается значение, передаваемое в return(). В PHP 3 eval() не возвращает значения.

Пример 1. eval() - простое объединение текста

$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.<br>';
echo $str;
eval ("\$str = \"$str\";");
echo $str;

Этот пример выведет:

This is a $string with my $name in it. This is a cup with my coffee in it.

Подсказка: Как всегда при выводе результатов непосредственно в браузер, вы можете использовать функции управления выводом для захвата вывод этой функции и сохранения его, например в string.



Смотрите также:
Все функции операторы
Описание на ru2.php.net
Описание на php.ru