Как разрешить пользователям вводить свою фамилию, используя дефисы (например, Jones-Smith
) но удалить все другие не алфавитно-цифровые?
В настоящее время я использую это:
$_POST['Surname'] = preg_replace("/[^ \w]+/", "", $_POST['Surname']);
Что идеально, за исключением того, что удаляет дефисы. Любой совет?
Если вы хотите оставить дефисы, просто добавьте их в свой набор отрицательных символов следующим образом:
$_POST['Surname'] = preg_replace("/[^ \w\-]+/", "", $_POST['Surname']);
Других решений пока нет …