dsp15140275697 2019-01-04 04:29
浏览 75

如何使用PHP下载CSV时转换日文字符[复制]

There might be similar question, but I am sorry to say that I couldn't find that. So let me ask about my problem.

I have a PHP function to download CSV file from browser as below:

function outputCSV($data, $file_name = 'file.csv') {
    header('Content-Encoding: UTF-8');
    # output headers so that the file is downloaded rather than displayed
    header('Content-type: text/csv; charset=utf-8');
    header("Content-Disposition: attachment; filename=$file_name");
    header('Content-Transfer-Encoding: binary');
    # Disable caching - HTTP 1.1
    header("Cache-Control: no-cache, no-store, must-revalidate");
    # Disable caching - HTTP 1.0
    header("Pragma: no-cache");
    # Disable caching - Proxies
    header("Expires: 0");

    # Start the ouput
    $output = fopen("php://output", "w");
    fputs($output, "\xEF\xBB\xBF"); // UTF-8 BOM !!!!!
    # Then loop through the rows
    foreach ($data as $row) {
        # Add the rows to the body
        fputcsv($output, $row); // here you can change delimiter/enclosure
    }
    # Close the stream off
    fclose($output);
}

After downloading the file, while open using Windows 10 Excel app the Japanese characters are wired. But can be viewed properly using Text Editor like NotePad++.

Is there any help on this?

Thanks.

</div>
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 素材场景中光线烘焙后灯光失效
    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器