public static function find($directory, $match, $ignore = null)
{
ob_start();
system('find ' . $directory . ' -type f');
if (!empty($ignore)) {
$ignore = str_replace('/', '\\/', $ignore);
$ignore = str_replace('.', '\\.', $ignore);
$ignore = str_replace('*', '', $ignore);
$ignore = '/' . $ignore . '/';
}
$files = explode("\n", ob_get_clean());
foreach ($files as $file) {
if (isset($ignore) && preg_match($ignore, $file)) {
continue;
}
if (preg_match($match, $file)) {
$out[] = $file;
}
}
return isset($out) ? $out : null;
}