我正在使用preg_replace验证来自我的数据库的名字和姓氏。如果我不包含preg_replace,则值会像平常一样传递,但如果我使用它,则不会传递任何内容。这是我目前的代码:
max
我对其他变量使用类似的验证没有问题,它实际上只发生在这些上。我对验证不太熟悉,所以任何帮助都会受到赞赏。
答案 0 :(得分:0)
您需要使用/[^A-Za-z]/
正则表达式,这将过滤除A-Z
和a-z
$string = '09test';
$new_string = preg_replace("/[^A-Za-z]/",'',$string);
echo $new_string; //prints test
答案 1 :(得分:0)
试试/[^A-Za-z]/g
。注意最后的全局修饰符。
您可以查看https://regex101.com/。
但我建议你将非英语字符音译为英语Transliterate any convertible utf8 char into ascii equivalent 在这种情况下,您不会丢失数据,例如在我的名字中János,但您将获得 Janos 而不是 Jnos