ホームページ >バックエンド開発 >PHPの問題 >PHP cp936をutf8に変換する方法

PHP cp936をutf8に変換する方法

藏色散人
藏色散人オリジナル
2020-08-24 10:07:155677ブラウズ

php cp936 を utf8 に設定する方法: 最初に php サンプル ファイルを作成し、次に toUtf8 メソッドを定義し、次に [iconv('utf-8', 'latin1//IGNORE', $str);] メソッドを渡します。変換の問題を解決します。

PHP cp936をutf8に変換する方法

推奨: 「PHP ビデオ チュートリアル

php cp936 から utf8 への中国語エンコード変換による文字化けの問題の解決策中国語の文字

今日問題が発生しました。

中文字符串 如  åç°ä»£è½»å¥¢å
¨éåç

を UTF8 に変換する必要があるため、PHP 関数を呼び出しました。

mb_convert_encoding($str, 'UTF-8', 'CP936');

変換後の結果は次のとおりです:

氓聬聨莽聨掳盲禄拢猫陆禄氓楼垄氓聟篓茅聯聹氓聬聤莽聛炉

実際に必要な結果は次のとおりです:

ポストモダンで軽い豪華な全銅製シャンデリア

この問題に遭遇したとき、Baidu で検索したところ、次のことがわかりました。解決策が見つかりませんでした

再び問題に巻き込まれないように、自分で試して解決し、記録を必要とする人と共有することが最善です。

解決策は次のとおりです:

Use iconv('utf-8', 'latin1//IGNORE', $str);

添付ファイル:

function toUtf8($str) {
    $encode = mb_detect_encoding($str, array('CP936', "ASCII","GB2312","GBK",'UTF-8','BIG5'));
    if ($encode == 'UTF-8') {
        return $str;
    } elseif ($encode == 'CP936') {
        return iconv('utf-8', 'latin1//IGNORE', $str);
    } else {
        return mb_convert_encoding($str, 'UTF-8', $encode);
    }
}

以上がPHP cp936をutf8に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。