Is there a library that can write an RFC 4180 CSV file with PHP? [closed]

狂风中的少年 提交于 2019-12-18 10:35:10

问题


I am aware of fputcsv, but according to this "wontfix" bug fputcsv does not correctly escape input, and its behavior will not be fixed for compatibility reasons. I would prefer an implementation that is compliant with RFC 4180 so Excel and LibreOffice can open it in all cases.

I've tried googling for a library that does this correctly, but there doesn't seem to be a consensus on a decent third party library, instead commonly suggesting the defective fputcsv. I could always roll my own, but I'd prefer not to reinvent the wheel if at all possible.


回答1:


It seems that every library out there stopped development some time in 2008. I'm not sure what's up with that. Here seem to be the popular-ish options:

  • PEAR's File_CSV, with zero end-user documentation, as we've come to expect from PEAR. This looks like the expected configuration info, including those for separator and quote.
  • parseCSV seems sane enough
  • PHP CSV Utils is linked quite a bit, though the "new blog" hosting updates is long gone.

I can't vouch for any of these. I happen to live in a magical land where I only need to deal with Excel-generated CSV files that will never, ever contain newlines in a field. This lets me get away with fgetcsv/fputcsv and be blissfully ignorant of how they're broken in the real world.



来源:https://stackoverflow.com/questions/5341219/is-there-a-library-that-can-write-an-rfc-4180-csv-file-with-php

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!