webworks-nuernberg / php-parsecsv
此包已被废弃,不再维护。未建议替代包。
PHP CSV 数据解析器,支持 Symfony(基于 https://github.com/parsecsv/parsecsv-for-php)
此包尚未发布版本,可用的信息很少。
README
使用 Composer 安装很简单。在您的 composer.json 中包含以下内容
composer require webworks-nuernberg/php-parse-csv
您也可以手动包含 parsecsv.lib.php 文件
require_once 'Webworks/Utils/parseCSV.php';
或使用 composer 自动加载器
require __DIR__ . '/vendor/autoload.php';
如果您使用 symfony,则不需要包含/“要求”上述文件中的任何一个。如果是这样,您可以轻松使用该类
$parser = new parseCSV();
功能
- 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(array('1986', 'Home', 'Nowhere', '')), true);
将二维数组转换为 CSV 数据,并将标头发送到浏览器以将输出作为文件处理并下载它
$csv = new parseCSV();
$csv->output('movies.csv', $array, array('field 1', 'field 2'), ',');
致谢
- parseCSV 基于以下链接 https://github.com/parsecsv/parsecsv-for-php
贡献者
请在此项目的 贡献者 页面上找到完整的列表。
许可证
(MIT 许可证)
版权(c)2016 Anton Dachauer。
特此授予任何获得此软件及其相关文档文件(“软件”)副本的任何人,免费使用该软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许获得该软件的人进行上述操作,但受以下条件约束
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论该索赔、损害或其他责任是因合同、侵权或其他原因而产生的,与软件或其使用或其他方式相关。