eval и html

  • Автор темы Автор темы niko42
  • Дата начала Дата начала

niko42

Новичок
Здравствуйте.

В базе данный есть запись:
HTML:
<div>
    <?php echo /alibaba/MSG::COUNT;?>
</div>

//@var $content - хранит результат из базы данных, т.е. HTML приведенный выше.
$content = fetch();
eval($content);

И тут получаем синтаксическую ошибку:
Parse error: syntax error, unexpected '<' in С:loc.ru/alibaba/im.php(30) : eval()'d code on line 1

Поясните, пожалуйста, почему eval так ругается на html ?
 
1. eval выполняет ТОЛЬКО. ЧИСТЫЙ. PHP. КОД. ТОЧКА.
2. eval использовать не надо. Это вредно для здоровья твоего приложения.
 
Во-первых, вот это

<?php echo /alibaba/MSG::COUNT;?>

не является корректным php-кодом.

Во-вторых, вывод html внутри php-кода начинается с "?>".

В-третьих, выкинь эту чушь и используй какой-нибудь template engine.
 
P.S. я задаю вопросы по Теории а не применяю это. Да, изучаю тонкости php. А тут уже камнями закидали.

fixxxer, Спасибо!
 
P.S. я задаю вопросы по Теории а не применяю это. Да, изучаю тонкости php. А тут уже камнями закидали.

fixxxer, Спасибо!
какие тонкости, это основы. просто возьми и вставь свой код на место eval, сразу увидишь результат.
PHP:
<?php
//@var $content - хранит результат из базы данных, т.е. HTML приведенный выше.
$content = fetch();
<div>
    <?php echo /alibaba/MSG::COUNT;?>
</div>
Даже простоя форумная раскраска показывает проблемы.
 
Сверху