Scandir avec mask - SCANDIR_SORT_DESCENDING

Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
- - Dernière réponse : nagaD.scar
Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
- 18 janv. 2018 à 07:51
Salut à tous !

Voilà je cherche simplement à lister des fichier correspondant à un pattern donné par un utilisateur dans l ordre de création.

Or jusque là tout ce que j ai trouvé me permet soit de liste les fichier en utilisant un pattern ( via "glob" ) soit lister en triant par ordre de creation (via "scandir") mais pas les deux à la fois.

Y aurai il une fonction que je n'ai pas vu ou est-ce que je dois le faire moi même ?

merci d'avance.
naga


PS : pas de code=> je n ai pas d'erreurs, mais mes recherches ne donnent rien
Afficher la suite 

1 réponse

Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
16
0
Merci
Je pensais pas que la question soit si spécifique mais bon.. bref j ai rien trouvé du coup je l'ai fait :


	public function getLastFilePattern( $folder , $pattern) {			
		$a=scandir($folder,SCANDIR_SORT_DESCENDING);
		foreach($a as $s){
		    preg_match($pattern,$s,$m);
			if(count($m) > 0) return $s;
		}
		return '';
	}



à noter donc que ca passe via regex et que si on veut utiliser la syntaxe classique de recherche de fichier il faudra un traitement avant ( par exemple
*.txt
devra être traduit en
/.*[.]txt$/
).

naga
Commenter la réponse de nagaD.scar