我有一个 .csv 模板,希望人们填写、保存并上传。
问题是这样的,假设一些用户会在一行中插入隐藏换行符,当使用 fgetcsv() 时它会输出被隐藏换行符打断的行。
如何避免换行符或清理我的数据?
可能的解决方案:
假设第一行是正确的,$count = 计算分隔符的个数直到换行,将文本重建成数组只要$count;
但我认为还有更好的选择。
后期编辑
这是输入*重要[! ] :excel 文件中的数据“很好”,没有损坏,是单行!!!保存为csv文件用记事本打开显示如下
asd;"asd
asd
asd";asd;asd
这是代码
$handle = fopen("file.csv","r");
$data = fgetcsv($handle,";");
while($data = fgetcsv($handle)) {
$array = explode(";",$data[0]);
print_r($array);
}
fclose($handle);
这是回显数据
Array ( [0] => asd [1] => "asd ) Array ( [0] => asd ) Array ( [0] => asd" [1] => asd [2] => asd [3] => )
谢谢
最佳答案
如果字段被正确引用,测试您的案例并查看没有断行非常容易。
所以,像这样的 CSV 行
1,"joe
""Big Coyote""
Hopkins",598600
将毫无问题地阅读。
关于php - 在csv php中转义换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7711589/