#php #html
#php #HTML
Вопрос:
Я хочу убедиться, что каждый специальный символ в моих данных уже преобразован в объекты html с помощью htmlspecialcharacters , но затем я заметил, что при каждой замене специального символа на объекты html у него есть символ «amp;» , в то время как сам символ «amp;» заменяется на amp;amp;
.
Итак, как мне использовать htmlspecialcharacters несколько раз для одних и тех же данных без многократного преобразования «amp;».
Пример:
Нет преобразования : amp;
1-е преобразование : amp;amp;
2-е преобразование : amp;amp;amp;
Комментарии:
1. » Итак, как мне использовать htmlspecialcharacters несколько раз для одних и тех же данных » … короткий ответ заключается в том, что вы не применяете это более одного раза. Я имею в виду, зачем вам это? Вы не должны хранить данные в базе данных подобным образом, вы должны использовать это только (один раз) при выводе html клиенту.
2. Хм, возможно, мне нужно заново подумать о дизайне, вы правы . Но в php Web нет предупреждения о том, чтобы не использовать его дважды, поэтому мой вопрос все еще остается.
3. Что ж, в защиту руководства по php, оно не может охватить все случаи, когда что-то НЕ следует использовать 😉
4. Это одно и то же правило для многих из этих кодировщиков … не выполняйте их дважды. Например, не используйте
urlencode
дважды для одного и того же значения. Не делайтеjson_encode
дважды, не делайтеhtmlentities
и т.д. Потому что в конечном итоге вы просто искажаете данные так, что отступать становится настоящей проблемой.