1. 程式人生 > >PHP 用fputcsv()生成csv檔案在windows Excel 下開啟亂碼問題解決

PHP 用fputcsv()生成csv檔案在windows Excel 下開啟亂碼問題解決

參考該文章https://segmentfault.com/a/1190000005366832 生成csv,csv檔案在windows wps和我ubuntu16桌面版下開啟正常。但是使用windows Excel 開啟亂碼。

解決:

    function test() {
        $fileName = 'demo';
        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); }