php fputcsv 文字化けの解決策: 1. fopen の前にヘッダー関数を配置します; 2. "fopen('php://output', 'a');" を通じてブラウザに直接出力します 3. を追加するだけですbom は最初に書き込まれる文字列の先頭にあります。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
方法php fputcsv の文字化けを解決する 問題?
PHP は fputcsv() を使用して csv ファイルを生成し、それを Windows Excel で開くと文字化けの問題を解決します
##csv ファイルは、Windows wps および私の ubuntu16 デスクトップ バージョンでは通常どおり開きます。 しかし、Windows Excelを使用すると文字化けが発生します。 解決策:function test() { $fileName = 'demo'; // 几个header函数需要放fopen之前。不然会直接在浏览器页面打印输出。而不是文件下载 header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="'.$fileName.'.csv"'); header('Cache-Control: max-age=0'); //直接输出到浏览器 $fp = fopen('php://output', 'a'); //在写入的第一个字符串开头加 bom。 $bom = chr(0xEF).chr(0xBB).chr(0xBF); $column = [ $bom.'姓名','性别', '年龄' ]; $data = [ '张三','男士', '21' ]; fputcsv($fp, $column); fputcsv($fp, $data); fclose($fp);}推奨される学習: 「
PHP ビデオ チュートリアル 」
以上がphp fputcsvの文字化け問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。