In questo articolo andiamo ad analizzare la struttura delle cartelle di CakePHP.

Estraendo il file zip di CakePHP ci troviamo con la seguente struttura:

  • app
  • lib
  • vendors
  • plugins
  • .htaccess
  • index.php
  • README

 

CakePHP è composto da tre cartelle portanti: “lib”, “vendors” e “app”.

Cartella lib

La cartella lib è il core di CakePHP e non va assolutamente modificato.

Cartella vendors

La cartella vendors contiene librerie e file di terze parti (es: phpmailer, fpdf etc…).

Cartella app

La cartella app contiene la nostra applicazione.
La maggior parte del lavoro viene svolta in questa cartella.
Vediamo ora la struttura e contenuto delle sottocartelle di “app”.

Config
Contiene i pochi file di configurazione di CakePHP. Dettagli sul database, boostrap, configurazione del core ed altro vanno posizionati in questa cartella.

Console
Contiene le shell di comando. Può contenere una sottodirectory Templates per personalizzare l’output della shell.

Controller
Contiene i nostri controller. I componenti sono inclusi nella sottocartella “Component”

Lib
Contiene librerie non di terze parti. Utile per separare il nostro codice interno da librerie esterne.

Locale
Contiene i file per le traduzioni.

Model
Contiene i Modelli.
Ha due sottocartelle “Behaviours” e “Datasources“.

Plugin
I Plugin vanno posizionati in questa directory.

Test
Questa directory contiene i test della nostra applicazione. Approfondiremo in un ulteriore articolo Come Testare Applicazioni CakePHP.

tmp
I dati temporanei vengono salvati in questa cartella. Normalmente in questa cartella vengono salvati file di sessione, logs e descrizione dei Modelli.
Per garantire una prestazione decente della nostra applicazione la cartella deve esistere ed essere scrivibile da CakePHP.

Vendor
Librerie e file di terze parti vanno inserite in questa cartella. E’ possibile accedere ai file inseriti in questa cartella utilizzando App::import(‘vendor’, ‘nomeFile’).
Questa cartella può sembrare ridondante con la cartella vendors contenuta nella root, ma tutto sarà più chiaro quando affronteremo il discorso su installazioni multi applicazioni.

View
Contiene le nostre view.
Sono contenute inoltre le sottocartelle “Emails”, “Errors”, “Helpers, “Layout”, “Pages” e “Scaffolds”.

webroot
Questa è la nostra document root dell’applicazione. I file css, javascript ed immagini vanno posizionati nelle rispettive sottodirectory di webroot.

In questo articolo abbiamo analizzato la struttura di CakePHP. Seguiranno ulteriori articoli e tutorial italiani per entrare nel dettaglio.

Seguimi

Walter Raponi

Appassionato di torte!

Ingredienti base: Model, View, Controller! Un grande framework come CakePHP e la nostra torta è pronta!
Seguimi

Latest posts by Walter Raponi (see all)