САМОУЧИТЕЛЬ PHP 4

       

Проверка синтаксической корректности кода


С помощью create_function()

можно проверить, является ли некоторая строка верным PHP-кодом, не запуская при этом сам код. В самом деле, если создание функции с телом— заданной строкой — прошло успешно, значит, код синтаксически корректен. Вот пример:

$fname="file.php";

$code=join("",File($fname));

if(create_function("","?>$code<?"))

  echo "Файл $fname является программой на PHP";

else

  echo "Файл $fname — не PHP-сценарий";

Мы используем оператор @, чтобы подавить сообщение о том, что функцию создать не удалось, если файл не является верным PHP-сценарием. И, конечно, нам нужно перевести наш код в контекст восприятия документа, для чего, собственно,

и нужно обрамление строки тэгами ?>

и <?.

Представленный фрагмент, конечно, будет воспринимать любой текстовый файл и HTML-документ как "программу на PHP". И он будет прав, т. к., действительно, статический текст, в котором нет PHP-вставок, является верным PHP-сценарием.



Содержание раздела