filter_very аккуратный и эффективный для специальных целей, но также ограниченный.
вы также получаете только отфильтрованную возвращаемую строку, которую нужно сравнить с исходной строкой, чтобы увидеть, подходит ли она.
кроме разрешенных символов могут быть определенные требования и / или структуры, которые вы не можете проверить таким способом.
наиболее распространенный способ - использовать функции pcre и особенно preg_match.это очень эффективно, и вы можете напрямую работать с возвращаемым значением.
и у вас есть все возможности регулярных выражений.Например, вы хотите проверить, чтобы каждое встречающееся имя находилось в форме exacmt «Mr / Mrs Firstname Lastname, akademic-title».
, когда сложно, если вы хотите разрешить только определенные диапазоны Юникодасимволов.
например, если вы хотите разрешить только U + 0600 – U + 06FF (1536–1791) (арабский).плюс определенный диапазон дингбатов и скобок или что-то в этом роде.
для этого нет предопределенных классов символов, и их определение будет не таким уж элегантным.
в этом случае лучшим способом действительно будетзацикливание текста за символом и проверка диапазонов ...