tomk79 / search-in-directory
指定ディレクトリ内のファイルを検索する。
0.0.1
2020-10-29 01:07 UTC
Requires
- php: >=5.4.0
- ext-mbstring: *
- ext-pdo: *
- ext-pdo_sqlite: *
- tomk79/filesystem: ^1.0.0
Requires (Dev)
- jms/serializer: <1.8
- phpdocumentor/phpdocumentor: ^2.9.0
- phpunit/phpunit: ^8.5
This package is auto-updated.
Last update: 2024-10-29 05:53:09 UTC
README
指定ディレクトリ内のファイルを検索する。
インストール手順 - Install
$ composer require tomk79/search-in-directory
使い方 - Usage
$searcher = new \tomk79\searchInDirectory\main( array( // 検索対象とするディレクトリを列挙する '/path/to/target_dir/', ), array( 'progress' => function( $_done, $_total ) use ( &$total, &$done ){ // 進行状況を受けるコールバック var_dump($_done.'/'.$_total); $total = $_total; $done = $_done; }, 'match' => function( $file, $result ) use ( &$matched ){ // 検索にマッチしたファイルの情報を受けるコールバック var_dump('Matched! '.$file); array_push($matched, $file); }, 'unmatch' => function( $file, $result ) use ( &$unmatched ){ // 検索にマッチしなかったファイルの情報を受けるコールバック var_dump('Unmatched! '.$file); array_push($unmatched, $file); }, 'error' => function( $file, $error ){ // 検索エラー情報を受けるコールバック var_dump($file); var_dump($error); }, ) ); // 検索する $matched = array(); $unmatched = array(); $total = 0; $done = 0; $result = $searcher->start( 'text', // 検索キーワード array( 'filter' => array( // ここに列挙するパターンにマッチしないパスは除外する '/./i', ) , 'ignore' => array( // ここに列挙するパターンにマッチするパスは除外する '/\.git/', ) , 'allowRegExp' => false, // true = 検索キーワード中に正規表現を使えるようにする 'ignoreCase' => false, // true = 大文字・小文字を区別しない 'matchFileName' => false, // true = ファイル名にもマッチさせる ) ); var_dump($matched); var_dump($done.'/'.$total);
更新履歴 - Change log
tomk79/search-in-directory v0.0.1 (2020年10月29日)
- Initial Release.
開発者向け情報 - for Developer
テスト - Test
$ cd {$documentRoot}
$ php vendor/phpunit/phpunit/phpunit
ドキュメント出力 - phpDocumentor
$ composer run-script documentation
ライセンス - License
Copyright (c)Tomoya Koyanagi
MIT License https://opensource.org/licenses/mit-license.php
作者 - Author
- Tomoya Koyanagi tomk79@gmail.com
- website: https://www.pxt.jp/
- Twitter: @tomk79 https://twitter.com/tomk79/