PHP Rechercher rapidement et récursivement des fichiers en fonction d’un masque
Exemple d’application:
Retrouver tous les javascripts à la racine du site: rglob($_SERVER['DOCUMENT_ROOT'],’*.*js’);
Description:
$r: dossier où débuter la recherche
$p: masque de recherche, exemple *.*js, *.*html
$f: flags à utiliser (voir la documentation de la fonction glob: http://fr.php.net/glob)
function io_rglob($r= », $p=’*’, $f=0){
$rs=glob($r.’*’,GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT);
$f=glob($r.$p,$f);
foreach($rs as $r)$f=array_merge($f,rglob($p,$f,$r));
return $f;
}
function io_rglob($r= », $p=’*', $f=0){
$rs=glob($r.’*',GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT);
$f=glob($r.$p,$f);
foreach($rs as $r)$f=array_merge($f,rglob($p,$f,$r));
return $f;
}
English