dcarbone / file-object-plus
PHP \SplFileObject 类的简单扩展
0.4.0
2018-01-30 02:26 UTC
Requires
- php: >=5.4
- dcarbone/helpers: 7.0.*
Requires (Dev)
- phpunit/phpunit: @stable
README
PHP 类 SplFileObject 的简单扩展
基础
此类是 PHP 基础类 SplFileObject 的一个非常简单的扩展。因此,它具有与基础类相同的功能,并增加了一些小的功能。
Countable 接口
我已经在这个类中实现了 Countable 接口。它使用我的 FileHelper 辅助类来确定计数
要使用,只需执行
$fileObject = new DCarbone\FileObjectPlus('myfile.txt'); $count = count($fileObject); echo $count;
要计算包含特定术语的行数,请执行
$fileObject = new DCarbone\FileObjectPlus('myfile.txt'); $count = $fileObject->countLinesContaining('my term'); echo $count;
分页
此类还实现了一些非常简单的分页方法,与指定返回数据库表一部分的方式非常相似。
要获取不依赖于行内容文件的一部分
$fileObject = new DCarbone\FileObjectPlus('myfile.txt'); $offset = 0; $limit = 25; $lines = $fileObject->paginateLines($offset, $limit); var_dump($lines);
默认情况下,也会返回空行。您可以选择通过传入4个参数来忽略这些行
$fileObject = new \DCarbone\FileObjectPlus('myfile.txt'); $offset = 0; $limit = 25; $search = null; $includeEmpty = false; $lines = $fileObject->paginateLines($offset, $limit, $search, $includeEmpty); var_dump($lines);
如果您希望仅按包含特定术语的行分页文件
$fileObject = new \DCarbone\FileObjectPlus('myfile.txt'); $offset = 0; $limit = 25; $search = 'my term'; $lines = $fileObject->paginateLines($offset, $limit, $search);
注意:在搜索时,第四个参数将被忽略
注意:这两个分页函数目前都会重置 SplFileObject 的内部行指针。