htmlspecialchars() x htmlentities()
Я прочитал их документацию, но до сих пор не понимаю, когда использовать каждый из них и их различие.
Давайте рассмотрим ситуацию с наличием общей строки в переменной и необходимости ее отображения в HTML-коде. Если в нем есть разметка HTML, я хочу, чтобы он был преобразован в код HTML (<
заменен на <
, &
заменен на &
, Если у него есть специальные символы UTF, которых нет в HTML-коде, он заменяется номером HTML (•
заменен на •
).
Какова лучшая функция для этого?
Сложнее: непечатаемые буквы, например \n
, char(10), char(13) и т. д. должны быть заменены их числовым кодом, если строка напечатана внутри <pre>
или любую специальную текстовую область, чтобы строка была сброшена.
1 ответ
htmlentities
это обходной путь для неправильной установки типа символа документа. htmlspecialchars
является правильной функцией, используемой для простого ввода текста в документ HTML.
Что касается вашего второго вопроса, я думаю, вы ищете addcslashes.