You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PHP将希腊字符尤其是微米符号μ写入CSV文件

PHP写入希腊字符(含微米符号μ)到CSV文件的解决方案

原实现问题说明

你当前的实现不正确,将μ手动替换为URL编码串%CE%BC写入CSV后,文件最终会直接存储编码字符串而非原始的微米符号,仅在需要URL编码格式的特殊场景下适用,常规CSV存储场景不建议这么处理。

规范实现方案

核心前提

确保全链路字符编码统一为UTF-8:

  • PHP源码文件自身存储为UTF-8无BOM格式
  • 待写入的$key、$value变量编码为UTF-8,若为其他编码可使用mb_convert_encoding()函数转换

实现步骤

不要手动拼接CSV行,PHP原生提供的fputcsv()函数会自动处理分隔符转义、特殊字符兼容,比手动拼接稳定性更高,完整示例代码如下:

// 打开CSV文件写入句柄
$myFile = fopen('output.csv', 'w');
// 写入UTF-8 BOM头,解决Windows平台Excel打开UTF-8编码CSV乱码问题
fwrite($myFile, chr(0xEF).chr(0xBB).chr(0xBF));
// 自定义分隔符为分号,与你原实现逻辑对齐
$delimiter = ';';
// 直接写入行数据,无需手动转义任何特殊字符(包括μ在内的所有UTF-8字符均可正常写入)
fputcsv($myFile, [$key, $value], $delimiter);
// 关闭文件句柄
fclose($myFile);

特殊场景适配

如果生成的CSV不需要兼容Windows Excel打开,可以省略BOM头写入的步骤,直接调用fputcsv写入即可,字符也能正常存储。

内容的提问来源于stack exchange,提问作者Max Lindner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:57:00