eval и html

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 ?
 

AnrDaemon

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

fixxxer

К.О.
Партнер клуба
Во-первых, вот это

<?php echo /alibaba/MSG::COUNT;?>
не является корректным php-кодом.

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

В-третьих, выкинь эту чушь и используй какой-нибудь template engine.
 

niko42

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

fixxxer, Спасибо!
 

AmdY

Пью пиво
Команда форума
P.S. я задаю вопросы по Теории а не применяю это. Да, изучаю тонкости php. А тут уже камнями закидали.

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