Skip to content

Instantly share code, notes, and snippets.

@bogomolov-dev
Created February 25, 2014 08:26
Show Gist options
  • Save bogomolov-dev/9205022 to your computer and use it in GitHub Desktop.
Save bogomolov-dev/9205022 to your computer and use it in GitHub Desktop.
"require": {
[...],
"symfony/finder": "2.4.*"
}
<?php
require_once '../../vendor/autoload.php';
// Initiiere den Finder
$finder = new \Symfony\Component\Finder\Finder();
$finder
// Suche nach Dateien.
->files()
// Suche im Verzeichnis "photos".
->in('images')
// Suche nach Dateinamen, die auf .png enden.
->name('*.png')
// Fange bei der Suche ab dem zweiten Level an.
->depth('> 2')
;
foreach ($finder as $file) {
/** @var Symfony\Component\Finder\SplFileInfo $file */
xdebug_var_dump($file->getRelativePathname());
}
<?php
require_once '../../vendor/autoload.php';
// Initiiere den Finder
$finder = new \Symfony\Component\Finder\Finder();
$finder
// Suche nach Dateien.
->files()
// Ignoriere Verzeichnise, wenn keine ausreichenden Berechtigungen vorliegen.
->ignoreUnreadableDirs()
// Suche im Verzeichnis "photos".
->in('images/photos')
// Suche zusätzlich im Verzeichnis "Icons".
->in('images/icons')
// Nicht jedoch im Verzeichnis "private".
->exclude('private')
// Suche nach Dateinamen, die auf .png enden.
->name('*.png')
// Suche nach Dateien, die größer als 1024K sind.
->size('> 1024K')
// Suche nach Dateien, die seit gestern bearbeitet wurden.
->date('since yesterday')
;
foreach ($finder as $file) {
/** @var Symfony\Component\Finder\SplFileInfo $file */
xdebug_var_dump($file->getRelativePathname());
}
<?php
require_once '../../vendor/autoload.php';
// Initiiere den Finder
$finder = new \Symfony\Component\Finder\Finder();
$finder
// Suche nach Dateien.
->files()
// Suche im Verzeichnis "photos".
->in('images')
// Suche nach Dateinamen, die auf .png enden.
->name('*.png')
// Sortiere die Ergebnisse nach dem Datum der letzten Bearbeitung.
->sortByModifiedTime()
;
foreach ($finder as $file) {
/** @var Symfony\Component\Finder\SplFileInfo $file */
xdebug_var_dump($file->getRelativePathname());
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment