2004-01-25 13:03:24 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Base class to find files
|
|
|
|
* @author Marcus Boerger
|
|
|
|
* @version 1.0
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
class FindFile extends FilterIterator
|
|
|
|
{
|
|
|
|
protected $file;
|
|
|
|
|
|
|
|
function __construct($path, $file)
|
|
|
|
{
|
|
|
|
$this->file = $file;
|
2004-04-25 13:06:15 +00:00
|
|
|
$list = split(';', $path);
|
|
|
|
if (count($list) <= 1) {
|
|
|
|
parent::__construct(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)));
|
|
|
|
} else {
|
|
|
|
$it = new AppendIterator();
|
|
|
|
foreach($list as $path) {
|
|
|
|
$it->append(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)));
|
|
|
|
}
|
|
|
|
parent::__construct($it);
|
|
|
|
}
|
2004-01-25 13:03:24 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
function accept()
|
|
|
|
{
|
|
|
|
return !strcmp($this->current(), $this->file);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
?>
|