ILIAS
trunk Revision v11.0_alpha-1811-gd2d5443e411
|
Public Member Functions | |
__construct (private Filesystem $filesystem) | |
files () | |
directories () | |
allTypes () | |
exclude (array $directories) | |
in (array $directories) | |
depth (string|int $level) | |
Adds tests for the directory depth. More... | |
date (string $date) | |
Adds tests for file dates. More... | |
size (string|int|array $sizes) | |
Adds tests for file sizes. More... | |
reverseSorting () | |
ignoreVCS (bool $ignoreVCS) | |
addVCSPattern (array $pattern) | |
sort (Closure $closure) | |
Sorts files and directories by an anonymous function. More... | |
sortByName (bool $useNaturalSort=false) | |
sortByType () | |
sortByTime () | |
append (iterable $iterator) | |
Appends an existing set of files/directories to the finder. More... | |
getIterator () | |
count () | |
Protected Attributes | |
array | $dirs = [] |
Private Member Functions | |
searchInDirectory (string $dir) | |
Private Attributes | |
const | IGNORE_VCS_FILES = 1 |
const | IGNORE_DOT_FILES = 2 |
array | $vcsPatterns = ['.svn', '_svn', 'CVS', '_darcs', '.arch-params', '.monotone', '.bzr', '.git', '.hg'] |
array | $iterators = [] |
array | $exclude = [] |
int | $ignore = 0 |
int | $mode = FileTypeFilterIterator::ALL |
bool | $reverseSorting = false |
array | $dates = [] |
array | $sizes = [] |
array | $depths = [] |
$sort = SortableIterator::SORT_BY_NONE | |
Definition at line 52 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::__construct | ( | private Filesystem | $filesystem | ) |
Definition at line 82 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::addVCSPattern | ( | array | $pattern | ) |
string[] | $pattern |
InvalidArgumentException |
Definition at line 239 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::allTypes | ( | ) |
Definition at line 103 of file Finder.php.
References ILIAS\Filesystem\Finder\Iterator\FileTypeFilterIterator\ALL.
ILIAS\Filesystem\Finder\Finder::append | ( | iterable | $iterator | ) |
Appends an existing set of files/directories to the finder.
The set can be another Finder, an Iterator, an IteratorAggregate, or even a plain array.
InvalidArgumentException | when the given argument is not iterable |
Definition at line 302 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::count | ( | ) |
Definition at line 403 of file Finder.php.
References ILIAS\Filesystem\Finder\Finder\getIterator().
Referenced by ILIAS\Filesystem\Finder\Finder\getIterator().
ILIAS\Filesystem\Finder\Finder::date | ( | string | $date | ) |
Adds tests for file dates.
The date must be something that strtotime() is able to parse:
$finder->date('since yesterday'); $finder->date('until 2 days ago'); $finder->date('> now - 2 hours'); $finder->date('>= 2005-10-15');
string | $date | A date range string |
Definition at line 181 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::depth | ( | string|int | $level | ) |
Adds tests for the directory depth.
Usage:
$finder->depth('> 1') // the Finder will start matching at level 1. $finder->depth('< 3') // the Finder will descend at most 3 levels of directories below the starting point.
string | int | $level | The depth level expression |
Definition at line 158 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::directories | ( | ) |
Definition at line 95 of file Finder.php.
References ILIAS\Filesystem\Finder\Iterator\FileTypeFilterIterator\ONLY_DIRECTORIES.
ILIAS\Filesystem\Finder\Finder::exclude | ( | array | $directories | ) |
string[] | $directories |
InvalidArgumentException |
Definition at line 115 of file Finder.php.
Referenced by ILIAS\Filesystem\Finder\Finder\searchInDirectory().
ILIAS\Filesystem\Finder\Finder::files | ( | ) |
Definition at line 87 of file Finder.php.
References ILIAS\Filesystem\Finder\Iterator\FileTypeFilterIterator\ONLY_FILES.
Referenced by ILIAS\Filesystem\Finder\Iterator\RecursiveDirectoryIterator\current(), ILIAS\Filesystem\Finder\Iterator\RecursiveDirectoryIterator\key(), ILIAS\Filesystem\Finder\Iterator\RecursiveDirectoryIterator\next(), ILIAS\Filesystem\Finder\Iterator\RecursiveDirectoryIterator\rewind(), and ILIAS\Filesystem\Finder\Iterator\RecursiveDirectoryIterator\valid().
ILIAS\Filesystem\Finder\Finder::getIterator | ( | ) |
LogicException |
Definition at line 378 of file Finder.php.
References ILIAS\Filesystem\Finder\Finder\count(), and ILIAS\Filesystem\Finder\Finder\searchInDirectory().
Referenced by ILIAS\Filesystem\Finder\Finder\count().
ILIAS\Filesystem\Finder\Finder::ignoreVCS | ( | bool | $ignoreVCS | ) |
Definition at line 223 of file Finder.php.
References ILIAS\Filesystem\Finder\Finder\IGNORE_VCS_FILES.
ILIAS\Filesystem\Finder\Finder::in | ( | array | $directories | ) |
string[] | $directories |
InvalidArgumentException |
Definition at line 133 of file Finder.php.
ILIAS\Filesystem\Finder\Finder::reverseSorting | ( | ) |
Definition at line 215 of file Finder.php.
Referenced by ILIAS\Filesystem\Finder\Finder\searchInDirectory().
|
private |
Definition at line 329 of file Finder.php.
References ILIAS\Filesystem\Finder\Finder\exclude(), ILIAS\Repository\filesystem(), ILIAS\Filesystem\Finder\Finder\reverseSorting(), and ILIAS\Filesystem\Finder\Finder\sort().
Referenced by ILIAS\Filesystem\Finder\Finder\getIterator().
ILIAS\Filesystem\Finder\Finder::size | ( | string|int|array | $sizes | ) |
Adds tests for file sizes.
$finder->size('> 10K'); $finder->size('<= 1Ki'); $finder->size(4); $finder->size(['> 10K', '< 20K'])
string|int|string[]|int[] | $sizes A size range string or an integer or an array of size ranges |
Definition at line 202 of file Finder.php.
References ILIAS\Filesystem\Finder\Finder\$sizes.
ILIAS\Filesystem\Finder\Finder::sort | ( | Closure | $closure | ) |
Sorts files and directories by an anonymous function.
The anonymous function receives two Metadata instances to compare. This can be slow as all the matching files and directories must be retrieved for comparison.
Definition at line 262 of file Finder.php.
Referenced by ILIAS\Filesystem\Finder\Iterator\SortableIterator\__construct(), ILIAS\Filesystem\Finder\Iterator\SortableIterator\getIterator(), and ILIAS\Filesystem\Finder\Finder\searchInDirectory().
ILIAS\Filesystem\Finder\Finder::sortByName | ( | bool | $useNaturalSort = false | ) |
Definition at line 270 of file Finder.php.
References ILIAS\Filesystem\Finder\Iterator\SortableIterator\SORT_BY_NAME, and ILIAS\Filesystem\Finder\Iterator\SortableIterator\SORT_BY_NAME_NATURAL.
ILIAS\Filesystem\Finder\Finder::sortByTime | ( | ) |
Definition at line 289 of file Finder.php.
References ILIAS\Filesystem\Finder\Iterator\SortableIterator\SORT_BY_TIME.
ILIAS\Filesystem\Finder\Finder::sortByType | ( | ) |
Definition at line 281 of file Finder.php.
References ILIAS\Filesystem\Finder\Iterator\SortableIterator\SORT_BY_TYPE.
|
private |
Definition at line 74 of file Finder.php.
|
private |
Definition at line 78 of file Finder.php.
|
protected |
Definition at line 67 of file Finder.php.
|
private |
Definition at line 69 of file Finder.php.
|
private |
Definition at line 70 of file Finder.php.
|
private |
Definition at line 65 of file Finder.php.
|
private |
Definition at line 71 of file Finder.php.
|
private |
Definition at line 72 of file Finder.php.
|
private |
Definition at line 76 of file Finder.php.
Referenced by ILIAS\Filesystem\Finder\Finder\size().
|
private |
Definition at line 80 of file Finder.php.
|
private |
Definition at line 63 of file Finder.php.
|
private |
Definition at line 61 of file Finder.php.
|
private |
Definition at line 57 of file Finder.php.
Referenced by ILIAS\Filesystem\Finder\Finder\ignoreVCS().