ホームページ >バックエンド開発 >PHPチュートリアル >PHP で CSV ファイルをエクスポートする際の UTF-8 エンコーディングの問題を修正するにはどうすればよいですか?
PHP での CSV 出力のエンコーディングの問題
Microsoft Excel を含め、多くのアプリケーションは、UTF-8 でエンコードされた CSV ファイルを正しく解釈するのに苦労しています。適切な HTTP ヘッダーを設定しているにもかかわらず、Excel は特に UTF-8 エンコーディングを認識できません。
この問題を解決するには、CSV 出力の先頭に BOM (バイト オーダー マーク) を含める方法があります。 BOM はファイルが UTF-8 エンコードであることを識別し、Excel が正しく解釈できるようにします。
PHP で CSV ファイルに BOM を追加するには、次のコードを使用します。
header('Content-type: text/csv; charset=UTF-8'); header('Content-Disposition: attachment; filename=Customers_Export.csv'); echo "\xEF\xBB\xBF"; // UTF-8 BOM
Thisこのメソッドは Windows 版 Excel 2007 で機能することが報告されています。ただし、Mac オペレーティング システムで成功するかどうかは不明です。
以上がPHP で CSV ファイルをエクスポートする際の UTF-8 エンコーディングの問題を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。