问题
i am looking for a method or maybe a conversion table that knows how to convert Umlauts and special characters to their most likely representation in ascii.
Example:
Ärger = aerger
Bôhme = bohme
Søren = soeren
pjérà = pjera
Anyone any idea?
Update: Apart from the good accepted Answer, i also found PECLs Normalizer to be quite interesting, though i can not use it due to the server not having it and not being changed for me.
Also do check out this Question if the Answers here do not help you enough.
回答1:
I find iconv completely unreliable, and I dislike preg_match solutions and big arrays ... so my favorite way is ...
function toASCII( $str )
{
return strtr(utf8_decode($str),
utf8_decode('ŠŒŽšœžŸ¥µÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿ'),
'SOZsozYYuAAAAAAACEEEEIIIIDNOOOOOOUUUUYsaaaaaaaceeeeiiiionoooooouuuuyy');
}
来源:https://stackoverflow.com/questions/6856885/convert-special-character-i-e-umlaut-to-most-likely-representation-in-ascii