本文地址:http://blog.youkuaiyun.com/thefirstwind/archive/2008/05/09/2422715.aspx
很多人通过拼字符串,直接使用fwrite来写CSV文件,这样固然没有错,但是如果遇到允许引号和逗号出现的情况,恐怕就显得非常麻烦了。
例如:
$csvDate = "中文,日文,韩文,西班牙','文,阿拉伯文";
$srcDir = '/workspace/CSVList';
$srcFile = $srcDir.date("Ymd").".csv";
if(!is_dir($srcDir)){
$fh = fopen($srcFile,'wb');
fwrite($fh,$csvDate);
fclose($fh);
}
我们想要得CSV文件是这样的格式
| 中文 | 日文 | 韩文 | 西班牙','文 | 阿拉伯文 |
但是由于,西班牙文中有单引号和逗号
实际上在Excel中是这样的
| 中文 | 日文 | 韩文 | 西班牙' | 文 | 阿拉伯文 |
解决方法一般来说就是使用转义符来进行赋值,不过如果遇到海量数据的情况下,这样的办法是不可取的。
下面推荐使用array_push和fputcsv相结合的方法来解决该问题。
这里通过程序来说明:
$srcDir
=
'
/workspace/UnLockList/
'
;
在使用PHP批量输出包含特殊字符如引号和逗号的数据到CSV文件时,可能会导致格式异常。通过创建并使用合适的函数,可以有效解决这个问题。文中提供了一个示例代码,展示了如何正确处理这类情况,确保CSV文件格式正确。
最低0.47元/天 解锁文章
798

被折叠的 条评论
为什么被折叠?



