jabranr / csv-parser
从文件、流或字符串中解析CSV数据
3.0.0
2019-03-04 11:48 UTC
Requires
- php: >=7.0
Requires (Dev)
- phpunit/phpunit: ^6.0|^7.0
README
PHP客户端,用于将路径、文件、流、资源或字符串中的CSV数据解析为索引或关联数组。
从v2迁移到v3
PHP支持更新到7+
安装
使用 composer 安装
#composer.json { "require": { "jabranr/csv-parser": "^3.0" } }
执行以下命令进行安装
$ comsposer install
使用方法
初始化一个新的实例
$csv = new Jabran\CSV_Parser();
单元测试
如果您已全局安装 composer
,则
运行单元测试
$ cd path/to/csv-parser
$ composer run tests
如果您已全局安装 phpunit
,则
$ cd path/to/csv-parser
$ phpunit
API
从字符串中获取数据
/* @param: string $str */ $csv->fromString($str);
从资源中获取数据(自v2.0.2起)
/* @param: resource $resource (f.e. resource created using fopen()) */ $csv->fromResource($resource);
从路径/URL中获取数据(自v2.0.2起)
/* @param: string $path */ $csv->fromPath($path);
解析数据以输出
/** * Set $headers true/false to include top/first row * and output an associative array * * @param: boolean $headers (Default: true) * @return: array */ $csv->parse($headers);
更有用的方法(自v2.0.2起)
/** * Set columns * @param array $columns * @return Jabran\CSV_Parser */ $csv->setColumns($columns); /** * Set rows * @param array $rows * @return Jabran\CSV_Parser */ $csv->setRows($rows); /** * Set headers * @param array $headers * @return Jabran\CSV_Parser */ $csv->setHeaders($headers); /** * Get columns * @return array */ $csv->getColumns(); /** * Get rows * @return array */ $csv->getRows(); /** * Get headers * @return array */ $csv->getHeaders();
示例
示例输入字符串
require 'path/to/vendor/autoload.php'; $csv = new Jabran\CSV_Parser; $str = 'id,first_name,last_name;1,Jabran,Rafique'; $csv->fromString($str); // Output with headers: $csv->parse(); Array( [id] => 1, [first_name] => 'Jabran', [last_name] => 'Rafique' ) // Output without headers: $csv->parse(false); Array( [0] => array( [0] => 'id', [1] => 'first_name', [2] => 'last_name' ), [1] => array( [0] => 1, [1] => 'Jabran', [2] => 'Rafique' ) )
许可证
© 2015年起
MIT许可证 - Jabran Rafique