morrislaptop / php-parsecsv
PHP的CSV数据解析器
1.1.1
2019-02-02 19:40 UTC
Requires
- php: >=5.5
Requires (Dev)
- phpunit/phpunit: 4.1.*
Suggests
- illuminate/support: Fluent array interface for map functions
This package is auto-updated.
Last update: 2024-08-29 04:08:57 UTC
README
注意:parseCSV目前正在修订以符合PHP 5标准。如果您有问题或功能请求,我们鼓励您提交一个issue。
parseCSV是一个易于使用的PHP类,用于正确地读取和写入CSV数据。它完全符合维基百科上逗号分隔值文章中概述的规范。它具有许多高级功能,可以帮助您在处理CSV数据时更加轻松。
由于PHP中处理CSV数据缺乏内置和第三方支持,这个库最初是由jimeh于2007年初创建的。
功能
- parseCSV是PHP(据我所知)唯一的完整和功能齐全的CSV解决方案。
- 支持包含值、包含逗号、双引号和新行。
- 自动检测分隔符字符。
- 按特定字段/列排序数据。
- 轻松操纵数据。
- 基本的SQL-like 条件、偏移和限制选项用于过滤数据。
- 检测输入格式错误。它试图变得智能,但由于CSV的结构以及如Excel之类的不同程序输出CSV数据的方式,不能完全信赖100%。
- 支持使用PHP的iconv函数进行字符编码转换(需要PHP 5)。
- 支持PHP 4和5。
示例用法
通用
$csv = new parseCSV('data.csv'); print_r($csv->data);
制表符分隔,并编码转换
$csv = new parseCSV(); $csv->encoding('UTF-16', 'UTF-8'); $csv->delimiter = "\t"; $csv->parse('data.tsv'); print_r($csv->data);
自动检测分隔符字符
$csv = new parseCSV(); $csv->auto('data.csv'); print_r($csv->data);
修改CSV文件中的数据
$csv = new parseCSV(); $csv->sort_by = 'id'; $csv->parse('data.csv'); # "4" is the value of the "id" column of the CSV row $csv->data[4] = array('firstname' => 'John', 'lastname' => 'Doe', 'email' => 'john@doe.com'); $csv->save();
将行/条目添加到CSV文件的末尾
仅在您知道文件的确切结构时才推荐使用。
$csv = new parseCSV(); $csv->save('data.csv', array('1986', 'Home', 'Nowhere', ''), true);
将二维数组转换为csv数据,并发送标题到浏览器以将输出作为文件下载
$csv = new parseCSV(); $csv->output('movies.csv', $array, array('field 1', 'field 2'), ',');
鸣谢
- parseCSV基于Ming Hong Ng的CsvFileParser类的概念。
贡献者
请查看项目贡献者页面上的完整列表。
许可
(MIT许可)
版权所有 (c) 2014 Jim Myhrberg。
本软件的副本及相关文档文件(以下简称"软件")的使用权,免费授予任何获得软件副本的人,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向软件提供的人进行上述行为,前提是
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按"现状"提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他方式,无论是否与软件或其使用或其他方式有关。