--- /dev/null
+<?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;
+ parent::__construct(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)));
+ }
+
+ function accept()
+ {
+ return !strcmp($this->current(), $this->file);
+ }
+}
+
+?>
\ No newline at end of file
exit(1);
}
-class FindFile extends FilterIterator
-{
- protected $file;
-
- function __construct($path, $file) {
- $this->file = $file;
- parent::__construct(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)));
- }
- function accept() {
- return !strcmp($this->current(), $this->file);
- }
-}
-
-foreach(new FindFile($argv[1], $argv[2]) as $pathname => $file) echo $file->getPathname()."\n";
+foreach(new FindFile($argv[1], $argv[2]) as $file) echo $file->getPathname()."\n";
?>
\ No newline at end of file
--- /dev/null
+<?php
+
+/** Find a specific file by name.
+ *
+ * Usage: php findregex.php <path> <name>
+ *
+ * <path> Path to search in.
+ * <name> Filename to look for.
+ *
+ * (c) Marcus Boerger, Adam Trachtenberg, 2004
+ */
+
+if ($argc < 3) {
+ echo <<<EOF
+Usage: php findregex.php <file> <name>
+
+Find a specific file by name.
+
+<path> Path to search in.
+<name> Regex for filenames to look for.
+
+
+EOF;
+ exit(1);
+}
+
+class RegexFindFile extends FindFile
+{
+ function accept()
+ {
+ return preg_match($this->file, $this->current());
+ }
+}
+
+foreach(new RegexFindFile($argv[1], $argv[2]) as $file) {
+ echo $file->getPathname()."\n";
+}
+
+?>
\ No newline at end of file