Как вставить переменную в htmlspecialchars?

Мне нужно вставить в htmlspecialchars переменную, чтобы было вот так:

$php = "<?php echo "текст"; ?>" // эта строка должна быть выведена в виде текста
echo htmlspecialchars ("<div style="color: red;">".$php."</div");

То есть, мне нужно вывести значение переменной, содержащей PHP код текстом красного цвета Я бы напрямую написал < но дело в том, что мои переменные содержат намного больше текста и каждый символ заменять спец. символом трудоёмко Хотелось бы попробовать такой вариант


Ответы (1 шт):

Автор решения: Максим Степанов

Так и выводить, как в вашем вопросе. Только у вас с кавычками проблема - нужно использовать комбинацию двойных и одинарных.

$php = '<?php echo "текст"; ?>'; // эта строка должна быть выведена в виде текста
echo htmlspecialchars('<div style="color: red;">'.$php.'</div>');

// вывод:
// <div style="color: red;"><?php echo 'текст'; ?></div>

Вообще, чтобы вывести текст красным, нужно бы так:

echo '<div style="color: red;">' .htmlspecialchars($php) . '</div>';
→ Ссылка