Ваша проблема связана с фундаментальным неправильным пониманием того, как работают PHP и HTML. Кавычки, являющиеся частью синтаксиса PHP, не могут влиять на то, как браузер интерпретирует строку в кавычках, потому что браузер никогда не видит строку в кавычках. Кавычки исчезают при выполнении кода PHP, и в браузер отправляется только вывод вашего сценария PHP.
Тем не менее, кавычки не предназначены для управления интерпретацией тегов HTML внутри строк в любом случае. Стиль кавычек о escape-последовательностях, таких как \n
и \t
; одинарные кавычки не поддерживают escape-последовательности (кроме \'
), а двойные кавычки интерпретируют их как буквальные новые строки / табуляции / и т. д. Ни один из стилей цитирования не имеет ничего общего с угловыми скобками и тегами HTML.
Если вы хотите, чтобы браузер отображал буквальные символы больше и меньше знаков, вы должны отправить браузеру закодированные HTML-сущности >
и <
соответственно. Вы можете сделать это, вручную выводя строки, такие как echo ">";
, или, более часто, используя одну из функций PHP, специально предназначенных для кодирования сущностей HTML, найденных в строках:
echo htmlspecialchars("x <= y <= z"); # outputs x <= y <= z
echo htmlspecialchars("<br>"); # outputs <br>