Geschrieben von Marcelo am Sabadini
14/11/2008
CakePHP - Suchen / Liste Dateien in einem Ordner
Hallo Jungs, diese Woche musste ich für PNG-Dateien in einem Ordner zu suchen. Wie kann ich CakePHP Einsatz in diesem Projekt habe ich die lib -Ordner (klicken Sie auf die Klasse der Dokumentation zu sehen).
Es ist super einfach, aber es ist Spitze.
Der Controller wie folgt vor:
- <?
- AppController { ControladorController Klasse erweitert AppController {
- Funktion myFunction () {
- ===- # Instanziieren der Klasse und übergeben Sie den Pfad als Parameter
- Folder ( 'img/home/' ) ; $ Ordner = new Folder ("img / home / ');
- Zugang ===- # find ()-Methode der Ordner-Klasse und übergeben Sie einen regex zu den Archiven suchen
- -> find ( ".* \. png" ) ; $ Files = $ folder -> find (".* \ Png.");
- # Seven ===- die Variable zu benutzen, wie Sie im Hinblick auf Wunsch
- ( 'arquivos' , $arquivos ) ; $ This -> set ('files', $ file);
- }
- }
- ?>
Wie Sie sehen können, finden Sie die Methode () 'wait' regulären Ausdruck als Parameter. Standardmäßig ist der Parameter'.*', dh jedes Zeichen in beliebiger Menge.
In meinem Fall habe ich die folgende Regex: '. .* \ Png'. Dies bedeutet, dass ich die Dateinamen, die mit nichts und mit einer beliebigen Anzahl von Zeichen (.*) und endend mit starten wollen. Png (\. Png). Dann wird er heiraten, dieses: asdfasdfsfsfa.png oder so: oder diese teste123.png: _teste_.png oder so: teste.png anderen. Es ignoriert jede Datei, die nicht mit Ende. 'Png'.
Wenn Sie nur $ verwenden Ordner-> find (), werden alle Dateien in dem Ordner aufgelistet.
Diese Methode liefert ein Array mit den gefundenen Dateien.
Ich hoffe, ich habe geholfen, nur nach nichts.


