Posté par Marcelo sur Sabadini
14/11/2008
CakePHP - Rechercher / lister les fichiers dans un dossier
Bonjour les gars, cette semaine, j'ai eu à regarder pour les fichiers PNG dans un dossier. Comment puis-je utiliser CakePHP dans ce projet, j'ai utilisé la lib dossier (cliquez pour voir la documentation de la classe).
C'est super simple, mais c'est la pointe.
Le contrôleur, procédez comme suit:
- <?
- AppController { ControladorController classe extends AppController {
- myFunction function () {
- ===- # Instancier la classe et passez le chemin comme un paramètre
- Folder ( 'img/home/' ) ; $ Dossier = nouveau dossier ('img / home /');
- Accès ===- # find () de la classe le dossier et passer une regex pour rechercher dans les archives
- -> find ( ".* \. png" ) ; $ Fichiers = $ dossier -> find (".* \ Png.");
- # Sept ===- la variable à utiliser comme bon vous semble en vue
- ( 'arquivos' , $arquivos ) ; $ This -> set ('fichiers', $ fichier);
- }
- }
- ?>
Comme vous pouvez le voir, la méthode find () 'attendre' expression régulière comme un paramètre. Par défaut, le paramètre est'.*',-dire, n'importe quel personnage dans n'importe quelle quantité.
Dans mon cas, j'ai utilisé l'expression régulière suivante: «. .* \ Png. Cela signifie que je veux les noms de fichiers qui commencent par quoi que ce soit et avec n'importe quel nombre de caractères (.*) et se terminant par. Png (\. Png). Puis il va se marier ceci: asdfasdfsfsfa.png ou ceci: ou cette teste123.png: _teste_.png ou ceci: teste.png autre. Il ignore tout fichier qui ne se termine pas avec. 'Png'.
Si vous utilisez seulement $ dossier-> find (), tous les fichiers dans le dossier sont répertoriés.
Cette méthode renvoie un tableau avec les fichiers trouvés.
J'espère avoir aidé, n'importe quoi après.


