redcatphp/csv-tools

该软件包已被废弃且不再维护。未建议替代软件包。

v1.0.1 2017-02-28 19:37 UTC

This package is not auto-updated.

Last update: 2020-01-24 16:37:23 UTC


README

不再积极维护。我现在使用NodeJS,我建议您查看PapaParse

#CSV 工具

###从 DelimiterFinder https://github.com/darraghenright/DelimiterFinder 中获取,支持 composer、命名空间和自动加载

一个简单的实用类,读取.csv或.dat(或其他)文件并尝试猜测分隔符

##用法

###创建实例

包含文件并按常规方式创建一个新的实例;构造函数需要一个文件路径作为必选参数

require_once dirname(__FILE__) . '/DelimiterFinder.php';

try {
    $finder = new DelimiterFinder('path/to/data.csv');
} catch (InvalidArgumentException $e) {
    // file does not exist :o 
} catch (RuntimeException $e) {
    // file is not readable :(
}

对象将尝试在提供的文件路径上打开文件句柄。如果文件不可读或不存在,则会抛出异常。

###查找

假设到目前为止一切顺利,现在是时候尝试猜测分隔符了。

该类从以下常见嫌疑人列表中搜索可能的分隔符

  • 逗号(,),制表符(\t)或分号(;

只需调用find方法

$delimiter = $finder->find();

如果成功,find()将存储并返回匹配的分隔符。后续调用不会再次搜索文档;它们只返回存储的匹配项。

###如果初次不成功...

如果匹配不成功,find()方法返回false。后续调用find()将再次搜索文档。您可以添加任意数量的自定义分隔符以进行搜索,这使得重复搜索更有用 ;)

$finder->addDelimiter('|');
$delimiter = $finder->find(); // pipe-delimited file? success!