私は次のようなコードを含むデータベースに直面しています:?ɬ´(これは:ëである必要があります)。使用されている文字セットがわかりません。すべてをUTF8にしたいので、これらのコードを変換する必要があります。文字セットを変換するphp関数を見つけましたが、試したすべて(mb_detect_encoding、iconv、utf8_decodeなど)は?ɬ´をëに変換しません。最初の問題は、使用されている文字セットがわからないことです。2番目の問題は、その文字セットをUTF8に変換する方法です。
質問する
167 次
1 に答える
0
コメントするには長すぎるので、答えとは言いたくないのですが、答えとして投稿します。
テストとして使用できる単一の文字列を見つけて、一連の変換を実行して、それらのいずれかが正しく機能するかどうかを確認します。mbstringモジュールがサポートする文字セットのリストがここにあります。つまり、基本的には次のようなことをします。
$string = "whatever"; // String you retrieve from the database.
$charSets = array('UTF-8', 'ISO-8859-1', ...); // Fill this array with the character sets.
foreach ($charSets as $cs) {
print mb_convert_encoding($string, 'UTF-8', $cs)."\n";
}
代わりにiconv()を使用することもできますし、おそらく使用する必要がありますが、その便利なサポート対象の文字セットのリストがなかったため、例としてmbstringを使用しました。
于 2012-11-07T22:17:38.527 に答える