私は.. PHPでアクセント文字の交換を行うが、私はUTF-8文字列を使用していますし、str_replaceが正しくマルチバイト文字列を扱うことができないので、私の推測がされてファンキーな結果を取得しようとしているPHPマルチバイトstr_replace?
$accents_search = array('á','à','â','ã','ª','ä','å','Á','À','Â','Ã','Ä','é','è',
'ê','ë','É','È','Ê','Ë','í','ì','î','ï','Í','Ì','Î','Ï','œ','ò','ó','ô','õ','º','ø',
'Ø','Ó','Ò','Ô','Õ','ú','ù','û','Ú','Ù','Û','ç','Ç','Ñ','ñ');
$accents_replace = array('a','a','a','a','a','a','a','A','A','A','A','A','e','e',
'e','e','E','E','E','E','i','i','i','i','I','I','I','I','oe','o','o','o','o','o','o',
'O','O','O','O','O','u','u','u','U','U','U','c','C','N','n');
$str = str_replace($accents_search, $accents_replace, $str);
私が手
結果:
Ørjan Nilsen -> �orjan Nilsen
期待される結果:
Ørjan Nilsen -> Orjan Nilsen
編集:私はUTF-8に設定私の内部文字ハンドラを持っている(mb_internaに従ってl_encoding())でも、$ strの値はUTF-8なので、私が知る限り、関係するすべての文字列はUTF-8です。 str_replace()は文字セットを検出して正しく使用していますか?
ここで私の答えを確認してください:[PHPの文字を修正](http://stackoverflow.com/a/9499771/318380)。これは私の多くを助けた!!! – jazkat