ホームページ > バックエンド開発 > PHPの問題 > php Excelリーダーでエクスポートした中国語の文字化けを解決するにはどうすればよいですか?

php Excelリーダーでエクスポートした中国語の文字化けを解決するにはどうすればよいですか?

coldplay.xixi
リリース: 2023-03-02 13:44:02
オリジナル
3628 人が閲覧しました

PHP Excel Reader でエクスポートされた中国語の文字化けを解決する方法: 1. dump 関数を使用しない場合は、[_defaultEncoding] 変数を変更することで問題を解決できます。2. dump 関数を使用する場合Excel をエクスポートするには、問題を解決するために htmlentities 関数を変更する必要があります。

php Excelリーダーでエクスポートした中国語の文字化けを解決するにはどうすればよいですか?

php Excel Reader でエクスポートされた中国語の文字化けコードを解決する方法:

php Excel Reader2.21 をダウンロードした後PHP 環境設定の実行ディレクトリに解凍して、example.php を開いて、最初に

1$data=new Spreadsheet_Excel_Reader("example.xls");
ログイン後にコピー
ログイン後にコピー

を確認してください。このステートメントは、Excel をエクスポートする php のインスタンスを作成するために使用されます。excel_reader2.php ファイルでは、次のことができます。この php Excel リーダー クラス

Spreadsheet_Excel_Reader($file='',$store_extended_info=true,$outputEncoding='')
ログイン後にコピー

のコンストラクター プロトタイプを見つけます。名前が示すように、php Excel リーダーによってエクスポートされる Excel ファイル コンテンツのエンコード タイプは、$outputEncoding パラメーターを通じて指定されます。デフォルトの php Excel リーダーのエクスポート Excel のエンコーディング タイプは変数 _defaultEncoding で設定され、デフォルトは UTF-8 です。したがって、php Excel リーダーのエクスポートで Excel 中国語が文字化けする問題を解決するには、通常 2 つの方法があります。文字。

php Excel リーダー エクスポート Excel 中国語文字化けの解決策 1 つの解決策:

1$data=new Spreadsheet_Excel_Reader("example.xls");
ログイン後にコピー
ログイン後にコピー

1$data=new Spreadsheet_Excel_Reader("example.xls",true,"GB2312");
ログイン後にコピー

php エクセル リーダー エクスポート エクセル 中国語文字化けに変更されます解決方法 2:

excel_reader2.php を開き、

1var$_defaultEncoding="UTF-8";
ログイン後にコピー

を見つけて

1var$_defaultEncoding="GB2312";
ログイン後にコピー

に変更し、PHP Excel Reader による Excel のエクスポートの問題を解決します。文字化けあり。

では、上記のチュートリアルで修正した後も example.xls に中国語を追加した後でも、example.php が依然として文字化けを出力するのはなぜでしょうか。

これは、php Excel リーダー クラスの dump 関数を呼び出しているためです。この関数は、エクスポートされた Excel ファイルの内容を HTML 形式で出力するために使用されますが、問題は次のとおりです。関数内の htmlentities 関数が問題を引き起こしています。htmlentities 関数は文字を HTML エンティティに変換するために使用されます。プロトタイプは次のとおりです。

htmlentities(string,quotestyle,character-set)
ログイン後にコピー

デフォルトの文字セットは ISO-8859-1 です。 php Excel Readerのダンプ機能を使用してエクスポートする場合 Excelで中国語の文字化けが発生する場合、

解決策1:

1$val=htmlentities($val);
ログイン後にコピー
ログイン後にコピー

1$val=htmlentities($val,ENT_COMPAT,"GB2312");
ログイン後にコピー

に変更します。 解決策 2:

1$val=htmlentities($val);
ログイン後にコピー
ログイン後にコピー

1$val=htmlspecialchars($val);
ログイン後にコピー

php Excel リーダーにエクスポート Excel 中国語文字化け解決策の概要

に変更しました。 dump 関数を使用して Excel をエクスポートすると、 _defaultEncoding 変数を変更するか、新しい Spreadsheet_Excel_Reader(excel file name, true, "GB2312"); を使用して、エクスポートされた Excel の文字化けの問題を解決できます。 Excel を HTML でエクスポートするダンプ関数を使用した場合、エクスポートされた Excel の文字化けの問題を解決するには、htmlentities 関数を変更する必要があります。

関連する学習の推奨事項: PHP プログラミングの入門から熟練度まで

以上がphp Excelリーダーでエクスポートした中国語の文字化けを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート