对于修剪空白的 PHP fgetcsv bug 有什么解决方法吗?
给定以下 CSV 数据字符串(我无法确保引用字段)
AB,CD, EF,GH, IJ
和 PHP 代码:(
$arr = fgetcsv($f);
假设 $f 是读取包含上述文本的文件的有效文件指针) - 人们会期望这样的结果
Array('AB', 'CD', ' EF', 'GH', ' IJ');
:您得到的事实:
Array('AB', 'CD', 'EF', 'GH', 'IJ');
如果您需要该字段内的位置上下文,那么这是有问题的。
仍然能够利用 fgetcsv 但确保空白不丢失的任何解决方法?
Given the following string of CSV data (I am unable to ensure the fields are quoted)
AB,CD, EF,GH, IJ
and PHP code of:
$arr = fgetcsv($f);
(assuming $f is a valid file-pointer reading a file containing the above text) - one would expect this result:
Array('AB', 'CD', ' EF', 'GH', ' IJ');
when in fact you get:
Array('AB', 'CD', 'EF', 'GH', 'IJ');
This is problematic if you need positional context within that field.
Any workarounds of still being able to take advantage of fgetcsv, but ensuring that whitespace is not lost?
The bug is reported here: http://bugs.php.net/bug.php?id=53848
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
哎呀。操蛋。
我不小心已经写了一个不会删除空格的函数:
使用它如下:
Oooops. S**t.
I accidently already wrote a function which doesn't strip the spaces:
Use it like: