Inviato da Marcelo Sabadini in
14/11/2008
CakePHP - Trova / elencare i file in una cartella
Ciao ragazzi, questa settimana ho dovuto cercare i file PNG in una cartella. Come si usa CakePHP in questo progetto, ho usato la lib cartella (clicca per vedere la documentazione relativa alla classe).
E 'super semplice, ma è punta.
Il controller eseguire le seguenti operazioni:
- <?
- AppController { ControladorController classe estende AppController {
- funzione myFunction () {
- ===- # Creare un'istanza della classe e passare il percorso come un parametro
- Folder ( 'img/home/' ) ; $ Cartella = Cartella nuova ('img / home /');
- Accesso ===- # metodo find () della classe Folder e passare una regex per cercare negli archivi
- -> find ( ".* \. png" ) ; $ File = $ cartella -> find (".* \ Png.");
- # Sette ===- la variabile da utilizzare come si desidera in vista
- ( 'arquivos' , $arquivos ) ; $ Questo - insieme> ('file', $ file);
- }
- }
- ?>
Come potete vedere, il metodo find () 'aspettare' espressione regolare come parametro. Per impostazione predefinita, il parametro è'.*', cioè qualsiasi carattere in qualsiasi quantità.
Nel mio caso, ho usato la seguente espressione regolare: '. .* \ Png'. Questo significa che voglio i nomi di file che iniziano con nulla e con qualsiasi numero di caratteri (.*) e termina con. Png (\. Png). Allora si sposerà questo: asdfasdfsfsfa.png o questo: o questo teste123.png: _teste_.png o questo: teste.png un altro. Ignorerà qualsiasi file che non finisce con. 'Png'.
Se si utilizza solo $ cartella-> find (), tutti i file della cartella sono elencati.
Questo metodo restituisce un array con i file trovati.
Spero di aver aiutato, qualsiasi cosa posta.


