Заявление об ограничении ответственности
Это не вопрос о том, следует ли экранировать ввод данных в базу данных. Здесь строго рассматриваются технические различия между тремя функциями в названии.
Есть этот вопрос , в котором обсуждается разница между
htmlentities ()
иhtmlspecialchars ()
. Но на самом деле здесь не обсуждаетсяfilter_var ()
, а информация, которую я нашел в Google, больше похожа на «Убедитесь, что вы избегаете ввода пользователя, прежде чем он будет отображен эхом!»Мои вопросы являются:
- Почему
htmlspecialchars ()
иhtmlentities ()
обычно используются вместоfilter_var ()
?- Есть ли снижение производительности при использовании
filter_var ()
?- Является ли
filter_var ()
не таким безопасным, как два других параметра?- Есть ли какая-либо другая причина НЕ использовать следующее для кодирования пользовательского ввода перед тем, как
echod
filter_var ( $ var, FILTER_SANITIZE_FULL_SPECIAL_CHARS);