ホームページ > php教程 > php手册 > php Excel Reader2.21でエクスポートした中国語の文字化けを解決する方法についての説明です。

php Excel Reader2.21でエクスポートした中国語の文字化けを解決する方法についての説明です。

WBOY
リリース: 2016-06-21 08:53:26
オリジナル
1537 人が閲覧しました

以前、PHPチュートリアルブログの友人から、php Excel Reader2.21を使ってエクセルをエクスポートした際に中国語が文字化けする問題を解決する方法を教えていただきました。 php Excel Reader を使用して Excel ヘルプをエクスポートすることが役立つことを願っています。

php Excelリーダー入門

php Excel Reader は Excel の内容を読み取る php Excel クラスです チュートリアルで紹介した PHP Excel Reader でエクスポートされた中国語文字化けの解決策は PHP Excel Reader 2.21 をベースにしているため、エクスポートされた中国語コードの文字化けの解決策も同様ですPHP Excel Reader のバージョンは PHP のバージョンによって異なりますので、必ず正しいバージョンの PHP Excel Reader をダウンロードしてください。

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

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

を確認してください。

1

$data = new Spreadsheet_Excel_Reader("example.xls");

1

$data

=

新しい

Spreadsheet_Excel_Reader(

1

Spreadsheet_Excel_Reader($file='',$store_extended_info=true,$outputEncoding='')

"example.xls"

)

;

このステートメントは、Excel をエクスポートする php のインスタンスを作成するために使用されます。excel_reader2.php ファイルには、この php Excel リーダー クラスのコンストラクター プロトタイプがあります。

1

$data = new Spreadsheet_Excel_Reader("example.xls");

1

Spreadsheet_Excel_Reader(

$file

=

"

1

$data = new Spreadsheet_Excel_Reader("example.xls",true,"GB2312");

,

$store_extended_info

=true,

$outputEncoding

=

1

var $_defaultEncoding = "UTF-8";

'')

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

$data = 新しい Spreadsheet_Excel_Reader("example.xls") ;

が に変更されました
1

$data = 新しい Spreadsheet_Excel_Reader("example.xls", true"GB2312") ;

PHP Excel Reader で Excel の中国語文字化けをエクスポートする場合の解決策 2: Excel_reader2.php を開いて を見つけます。
1

var $_defaultEncoding = "UTF-8";

に変更されました

1

var $_defaultEncoding = "GB2312";

1

var $_defaultEncoding = "GB2312";

php Excel ReaderでエクスポートしたExcelが文字化けする問題を解決できます。

では、上記のチュートリアルで変更した後も example.xls に中国語を追加した後も、example.php が依然として文字化けを出力するのはなぜでしょうか?これは、php Excel リーダー クラスの dump 関数を呼び出して、エクスポートされた Excel ファイルの内容を HTML 形式で出力するために使用されるためです。この問題は、この関数の htmlentities 関数が原因です。文字は HTML エンティティに変換されます。プロトタイプは次のとおりです

1

htmlentities(string,quotestyle,character-set)

1

htmlentities(string,引用スタイル,文字-セット)スパン>

デフォルトの文字セットは ISO-8859-1 であるため、PHP Excel Reader のダンプ機能を使用して Excel をエクスポートすると、中国語の文字化けが表示されます。

1

$val = htmlentities($val);

解決策 1:

1

1

$val = htmlentities($val,ENT_COMPAT,"GB2312");

$val = htmlentities($val);

に変更されました

1

1

$val = htmlentities($val);

$val = htmlentities($val,ENT_COMPAT,"GB2312");

解決策 2

1

$val = htmlspecialchars($val);

1

$val = htmlentities($val);

に変更されました

1

$val = htmlspecialchars($val);

php Excel Readerでエクスポートした中国語文字化けの解決策まとめ



Excel のエクスポートにダンプ関数を使用しない場合は、_defaultEncoding 変数を変更するか、

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

ここまで、php Excel Reader2.21を使用してExcelをエクスポートする際に中国語が文字化けする問題の解決方法をご紹介しました。 注意: PHP Web サイト開発チュートリアル-leapsoul.cn 転載の際は、元のソースとこの記述をリンクの形で明記してください。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート