您可以使用以下代码来去除带重音的字符。
function removeAccents($subject){
//Note: This is not a complete list of accented characters
$accented = array('ü','Ü','ú','È','É','Ê','Ë','é','ê','ë','è','£','Ğ','İ','Ş','ı','ğ','ş','ç','ö','Ÿ','ÿ','á','ñ','Ñ','À','Á','Â','Ã','Ä','Å');
$clean = array('u','U','u','E','E','E','E','e','e','e','e','f','G','I','S','l','g','s','c','o','Y','y','a','n','N','A','A','A','A','A','A');
$accentcount = count($accented);
for ($i=0;$i<$accentcount;$i++){
$subject = str_replace($accented[$i], $clean[$i], $subject);
}
return $subject;
}
例如:
removeAccents("el niño");
返回 "el nino"
-
的字符。尝试告诉它不要删除字母,例如\p{L}
。 - Niet the Dark Absol