我有这个:
$var = "User_èéàùìò";
if(0 < count(array_intersect(array_map("strtolower", str_split($var)), array("ì", "è", "é", "ò", "à"))))
回声“真”;否则回显“假”;
这将返回“假”。我应该做些什么?
我有这个:
$var = "User_èéàùìò";
if(0 < count(array_intersect(array_map("strtolower", str_split($var)), array("ì", "è", "é", "ò", "à"))))
回声“真”;否则回显“假”;
这将返回“假”。我应该做些什么?
您知道 php 字符串函数实际上适用于二进制数据,但不适用于文本。文本的编码是 UTF8。所以你不能使用str_split
它。
$var = "User_èéàùìò"; // has 11 characters
str_split($var); // has 17 items
最好使用支持多字节字符的正则表达式。
$var = "User_èéàùìò";
var_dump(preg_match('/[ìèéòà]/iu', $var)); // i - case insensitive, u - utf character