Attention: gethostbyaddr () [ function.gethostbyaddr ]: Adresse IPv4 n'est pas un valide ou une adresse IPv6 dans / home / Sabadini / marcelosabadini.com.br / blog / wp-content / plugins / googlemapstats / googlemapstats.php à la ligne 49
Marcelo Sabadini »CakePHP

CakePHP - Rechercher / lister les fichiers dans un dossier


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (9 votes, moyenne: 4.56 sur 5)
Loading ... Chargement en cours ...

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:

  1. <?
  2. AppController { ControladorController classe extends AppController {
  3. myFunction function () {
  4. ===- # Instancier la classe et passez le chemin comme un paramètre
  5. Folder ( 'img/home/' ) ; $ Dossier = nouveau dossier ('img / home /');
  6. Accès ===- # find () de la classe le dossier et passer une regex pour rechercher dans les archives
  7. -> find ( ".* \. png" ) ; $ Fichiers = $ dossier -> find (".* \ Png.");
  8. # Sept ===- la variable à utiliser comme bon vous semble en vue
  9. ( 'arquivos' , $arquivos ) ; $ This -> set ('fichiers', $ fichier);
  10. }
  11. }
  12. ?>

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.

CakePHP - Utiliser le nom de table non standard


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (5 votes, moyenne: 5,00 sur 5)
Loading ... Chargement en cours ...

Eh bien, tout le monde sait que pour créer un contrôleur de CakePHP vous devez créer la table dans la base de données nommée au pluriel. C'est très facile, mais depuis que je suis tombé sur un pilote qui est appelé «par défaut» ... bientôt, gâteau s'attend à ce que le nom est «options» à droite? Faux! l'«dictionnaire» des Ceke Cake est en anglais, de sorte que mettrait le nom de table comme "option".

Une autre situation qui peut arriver est que vous obtenez un site / système de reprogrammer le Ceke Cakemas ne pouvez pas perdre les données de la base de données ... Plusieurs fois, la banque est déjà ADDO noms structurés et non-standard qui attend gâteau.

Pour cela, il ya une solution très simple. Nous allons utiliser l'attribut $ useTable et mettre le nom de la table. Voir l'exemple ci-dessous:

  1. <?
  2. AppModel { Option classe étend AppModel {
  3. = "Opcao" ; var $ name = "option";
  4. = "opcoes" ; var $ useTable = "Options";
  5. }
  6. ?>

Là vous allez, ce qui en fait le problème que j'ai eu a été résolu. Si la clé primaire de la table est différent de 'id', utiliser l'attribut primaryKey $, en mettant le nom du champ.

J'espère avoir aidé, câlins!

Get Adobe Flash player Plugin par wpburn.com thèmes wordpress