morrislaptop/php-parsecsv

PHP的CSV数据解析器

1.1.1 2019-02-02 19:40 UTC

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'), ',');

鸣谢

贡献者

请查看项目贡献者页面上的完整列表。

许可

(MIT许可)

版权所有 (c) 2014 Jim Myhrberg。

本软件的副本及相关文档文件(以下简称"软件")的使用权,免费授予任何获得软件副本的人,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向软件提供的人进行上述行为,前提是

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按"现状"提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他方式,无论是否与软件或其使用或其他方式有关。