ehough / finder
此包已被废弃且不再维护。没有建议的替代包。
与PHP 5.2+兼容的Symfony的Finder组件的分支
v2.8.0
2015-12-02 07:40 UTC
Requires
- php: >=5.2
- ehough/filesystem: ~2.0
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2020-01-24 14:53:06 UTC
README
由于PHP 5.2的使用率已经最终降至10%以下,此库不再受支持或维护。
与Symfony的Finder组件兼容的分支,适用于PHP 5.2+。
动机
Symfony的Finder组件是一个出色的库,但它只兼容PHP 5.3+。尽管99%的PHP服务器运行PHP 5.2或更高版本,但仍有13%的所有服务器仍在运行PHP 5.2或更低版本(来源)。
与Symfony的Finder组件的区别
主要区别是Symfony类的命名约定。而不是使用\Symfony\Component\Finder
命名空间(及其子命名空间),将Symfony类名以ehough_finder
前缀,并遵循PEAR命名约定。
一些类命名转换的例子
\Symfony\Component\Finder\Finder -----> ehough_finder_Finder
\Symfony\Component\Finder\Expression\Expression -----> ehough_finder_expression_Expression
\Symfony\Component\Finder\Shell\Command -----> ehough_finder_shell_Command
用法
Finder通过直观的流畅接口查找文件和目录。
$finder = new ehough_finder_Finder(); $iterator = $finder ->files() ->name('*.php') ->depth(0) ->size('>= 1K') ->in(__DIR__); foreach ($iterator as $file) { print $file->getRealpath()."\n"; }
但您也可以使用它来查找存储在远程位置的文件,例如,在这个示例中,我们在查找Amazon S3上的文件。
$s3 = new Zend_Service_Amazon_S3($key, $secret); $s3->registerStreamWrapper("s3"); $finder = new ehough_finder_Finder(); $finder->name('photos*')->size('< 100K')->date('since 1 hour ago'); foreach ($finder->in('s3://bucket-name') as $file) { print $file->getFilename()."\n"; }
发布和版本
发布与上游Symfony仓库同步。例如,ehough/finder v2.3.1
已合并了来自Symfony/Finder v2.3.1
的代码。