我正在寻找一种方法或转换表,它知道如何将变音符号和特殊字符转换为ascii中最可能的表示形式。
示例:
Ärger = aerger
Bôhme = bohme
Søren = soeren
pjérà = pjera
有人有任何想法吗?
更新: 除了良好的接受答案,我还发现PECL Normalizer非常有趣,但我不能使用它,因为服务器没有它而且没有为我更改。
如果此处的答案对您没有帮助,请查看this Question。
答案 0 :(得分:15)
我发现iconv完全不可靠,我不喜欢preg_match解决方案和大数组...所以我最喜欢的方式是......
function toASCII( $str )
{
return strtr(utf8_decode($str),
utf8_decode('ŠŒŽšœžŸ¥µÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿ'),
'SOZsozYYuAAAAAAACEEEEIIIIDNOOOOOOUUUUYsaaaaaaaceeeeiiiionoooooouuuuyy');
}