我要做的是从字符串中删除所有重音符号和变音符号,将“lärm”变成“ larm”,或者将“andré”变成“ andre”。我试图做的是先对字符串进行utf8_decode,然后在其上使用strtr,但是由于我的源文件另存为UTF-8文件,因此我无法输入所有变音符号的ISO-8859-15字符- 编辑器将插入UTF-8字符。
显然,解决方案是拥有一个包含ISO-8859-15文件的包含文件,但是有比包含另一个所需包含文件更好的方法吗?
echo strtr(utf8_decode($input), 'ŠŒŽšœžŸ¥µÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿ', 'SOZsozYYuAAAAAAACEEEEIIIIDNOOOOOOUUUUYsaaaaaaaceeeeiiiionoooooouuuuyy');
更新: 也许我对尝试做的事情有点不准确:我实际上并不是要删除变音符号,而是将其替换为最接近的“一个字符ASCII”。
iconv(“utf-8”,”ascii//TRANSLIT”,$input);