简化 / csv
让读取CSV文件变得简单!
v1.1.0
2020-10-15 00:46 UTC
Requires
- php: >=5.6
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^5
- squizlabs/php_codesniffer: ^3.5
- symfony/var-dumper: ^3.4 || ^5.1
This package is auto-updated.
Last update: 2024-09-16 10:49:03 UTC
README
读取分隔文件... 简化的方式!
为什么你应该使用这个?我们已经有 fgetcsv()
。
是的,fgetcsv()
很棒,这个包在底层使用了它 - 并增加了一些生活品质的提升。
此包的主要优势包括
- 轻松设置要跳过的记录数(如标题)
- 你可以给它一个列标题数组,它将返回解析的行作为关联数组。
- 这意味着你可以使用自己定义的数组键来工作,而不是必须记住数值位置。
- 这提供了一些基本的转换功能。
- 自动去除所有值的前后空格。
- 自动将空字符串转换为
null
。
- 如果你提供列标题,它将比较列标题的数量与每行解析出的列数,如果你的数据缺少列,则抛出异常。
- 以数组或JSON对象的形式返回完整的CSV。
安装
composer require simpl/csv
基本用法
<?php use Simpl\Csv\Reader; $csv = Reader::createFromFile('/path/to/your/file.csv'); $csv->setColumns(['name', 'address', 'phone']); $csv->setSkipRows(1); while($row = $csv->read()) { print_r($row['address']); }
有关完整文档,请参阅 https://simpl-php.com/components/csv。
测试
composer test
编码标准
此库使用 PHP_CodeSniffer 来确保遵循编码标准。
我采用了 PHP FIG PSR-2 编码标准,除了缩进规则(制表符与空格)。PSR-2 表示4个空格。我使用制表符。没有讨论。
为了支持使用制表符缩进,我定义了一个自定义的PSR-2规则集,它扩展了由PHP_CodeSniffer使用的标准 PSR-2规则集。你可以在项目的根目录中找到此规则集,名为PSR2Tabs.xml。
Codesniffer
composer codensiffer
Codefixer
composer codefixer