CakePHP - Suche / list-Dateien in einem Ordner


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (9 Stimmen, Durchschnitt: 4.56 von 5)
Loading ... Loading ...

Hallo Leute, ich brauchte in dieser Woche zu finden, PNG-Dateien in einem Ordner. Wie kann ich CakePHP Einsatz für dieses Projekt benutzte ich die lib -Ordner (klicken Sie auf und sehen Sie die Klassen-Dokumentation).

Es ist super einfach, aber es lohnt die Spitze.

Der Controller wie folgt vor:

  1. <?
  2. AppController { ControladorController Klasse erweitert AppController (
  3. myFunction Funktion () (
  4. ===- # Instanziieren der Klasse, und übergeben Sie den Pfad als Parameter
  5. Folder ( 'img/home/' ) ; $ Folder = new Folder ('img / home /');
  6. # ===- Join the find ()-Methode des Folder-Klasse und übergeben eine Regex zu den Archiven der Suche
  7. -> find ( ".* \. png" ) ; $ Files = $-Ordner -> find (".* \. Png");
  8. # ===- Seven Variable Ansicht verwenden, wie Sie wollen in der
  9. ( 'arquivos' , $arquivos ) ; $ This -> set ('Dateien', $ file);
  10. )
  11. )
  12. ?>

Wie Sie sehen können, finden Sie die Methode () 'Hold' Regular Expression als Parameter. Standardmäßig ist der Parameter'.*', dh alle Zeichen in beliebiger Menge.

In meinem Fall habe ich die folgenden regex: '.* \. Png'. Ich meine, dass Dateinamen, die nichts mit anfangen und mit einer beliebigen Anzahl von Zeichen (.*) und endend mit. Png (\. Png). Dann wird er heiraten, dazu: asdfasdfsfsfa.png oder so: teste123.png oder so: _teste_.png oder so: Ein weiterer teste.png. Es wird ignoriert, dass jede Datei nicht mit "endet. Png '.

Wenn Sie nur $-Ordner-> find (), die alle Dateien in dem Ordner aufgelistet sind.

Diese Methode liefert ein Array mit den gefundenen Dateien.

Ich hoffe, dass ich geholfen habe, nur nichts gepostet.

CakePHP - Wie nichtstandardisierte verwenden Sie die Tabelle mit Namen


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (5 Stimmen, Durchschnitt: 5.00 von 5)
Loading ... Loading ...

Nun weiß jeder, dass zum Plural erstellen einen Controller in CakePHP die in müssen Sie die Tabelle mit dem Namen in der Datenbank. Dies ist sehr einfach, aber da ich stieß einen Treiber genannt, dass ist standardmäßig "... so der Cake hofft, dass der Name 'ist options' richtig? Falsch! Das "Wörterbuch" der Ceke Cake ist Englisch dann würde Put-Option der Tabelle Namen wie '.

Eine andere Situation, was passieren kann ist, erhalten Sie eine Website / System zu programmieren mit Ceke Cakemas nicht verlieren können die Daten aus der Datenbank ... Viele mal die Bank ADDO bereits strukturiert ist und Nicht-Standard-Namen, dass der Kuchen erwartet.

Dafür gibt es eine sehr einfache Lösung. Wir werden die $ useTable Attribut und setzen Sie den Tabellennamen. Siehe Beispiel unten:

  1. <?
  2. AppModel { Klasse Option erweitert AppModel (
  3. = "Opcao" ; var $ name = "Option";
  4. = "opcoes" ; var $ useTable = "Optionen";
  5. )
  6. ?>

Dort gehen Sie, dass dies das Problem gelöst habe, war ich. Wenn die Tabelle den Primärschlüssel ist anders als 'id', verwenden Sie das Attribut $ primaryKey, indem Sie den Feldnamen.

Ich hoffe, ich half, Umarmungen!

Get Adobe Flash player Plugin von wpburn.com Wordpress Themes