SlideShare a Scribd company logo
ZEND FRAMEWORK: IL NOSTRO “HELLO WORLD!”
|  31 mar 2008 Zend Framework dalla A alla Zend |  Creiamo la struttura dell'applicazione Creare la struttura per un progetto con Zend Framework è più facile di quanto immaginiamo utilizzando Zend Studio for Eclipse.
|  31 mar 2008 Zend Framework dalla A alla Zend |  Capire la struttura MVC application default controllers models views scripts html index.php .htaccess images / scripts / styles
|  31 mar 2008 Zend Framework dalla A alla Zend |  Il file .htaccess Per fare in modo che il Front Controller all'interno del bootstrap ( index.php ) riceva tutte le richieste degli utenti dobbiamo utilizzare il modulo  mod_rewrite  di Apache. Normalmente la nostra richiesta di esempio: http://localhost/post/list Genererebbe un errore 404 di pagina non trovata perchè  post  e  list  non sono cartelle presenti fisicamente nella DocumentRoot del nostro server web.
|  31 mar 2008 Zend Framework dalla A alla Zend |  Analizziamo il file .htaccess RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php Con questa semplice espressione regolare indirizziamo tutte le richieste verso index.php escludendo le risorse statiche. Le risorse statiche (immagini, fogli di stile, file javascript...) non devono essere elaborate dal Front Controller e per questo vengono escluse identificandole attraverso l'estensione.
|  31 mar 2008 Zend Framework dalla A alla Zend |  Il Bootstrap Zend Studio for Eclipse ha creato per noi anche il file index.php che prima abbiamo chiamato bootstrap. require_once 'Zend/Controller/Front.php'; set_include_path(....)‏ $controller = Zend_Controller_Front::getInstance(); $controller-> setControllerDirectory('../application/default/controllers'); $controller->throwExceptions(false); // should be turned on in development time  // run! $controller->dispatch();
|  31 mar 2008 Zend Framework dalla A alla Zend |  I controller Come già detto in precedenza tutti i controller sono classi derivate da  Zend_Controller_Action. Tutti i controller devo essere chiamati  [ Nome ]Controller  con la prima lettera del nome  maiuscola  poi tutto  CamelCase . Devono essere salvati nel file  [ Nome ]Controller.php  all'interno della cartella dei controller che abbiamo specificato nel bootstrap.
|  31 mar 2008 Zend Framework dalla A alla Zend |  Perchè IndexController e indexAction Se nella richiesta l'utente non specifica nè un controller nè un'azione  il front controller chiamerà automaticamente  IndexController->indexAction . Se viene specificato un controller ma non un'azione verrà chiamata l'azione  indexAction  del controller specificato.
|  31 mar 2008 Zend Framework dalla A alla Zend |  IndexController class IndexController extends Zend_Controller_Action  { /**   * The default action - show the home page   */ public function indexAction()  { // TODO Auto-generated IndexController::indexAction()  //action } } Tutte le azioni sono metodi della classe chiamate come  [nome]Action()  con la prima lettera  minuscola  e poi tutto  CamelCase .
|  31 mar 2008 Zend Framework dalla A alla Zend |  Il ViewRender Il  ViewRenderer  è un helper che automaticamente visualizzerà la vista corrispondente all'azione chiamata. Ad esempio, se l'azione chiamata è la indexAction() di IndexController, il ViewRenderer visualizza automaticamente la vista  index.pthml  che si trova in  application/views/scripts/index Generalizzando: [nomeAzione].phtml ../ application/views/scripts /[NomeController]
|  31 mar 2008 Zend Framework dalla A alla Zend |  index.pthml <!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;> <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;> <head> <meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot; /> <title>New Zend Framework Project</title> </head> <body> Hello, world! </body> </html>
Zend Framework Simplicity, Meet Power [email_address] “ THANK YOU

More Related Content

PPT
Zend Framework Workshop Parte2
PPT
Alla scoperta di Zend Framework 1.8
PDF
Zend Framework Workshop Parte1
PDF
Introduzione ai componenti in Angular 4
PDF
Introduzioni ai services in Angular 4 e ad RxJS
PDF
Angular 4 - convertire o migrare un'applicazione Angularjs
PDF
Introduzione ad Angular CLI
PPTX
CommitUniversity AngularJSAdvanced Andrea Vallotti
Zend Framework Workshop Parte2
Alla scoperta di Zend Framework 1.8
Zend Framework Workshop Parte1
Introduzione ai componenti in Angular 4
Introduzioni ai services in Angular 4 e ad RxJS
Angular 4 - convertire o migrare un'applicazione Angularjs
Introduzione ad Angular CLI
CommitUniversity AngularJSAdvanced Andrea Vallotti

What's hot (11)

PDF
Angularjs
PPTX
MVC2: non solo tecnologia
PPTX
ASP.NET MVC 6 - uno sguardo al futuro
PPTX
Angular js: routing
PPTX
Customize ASP.NET Core scaffolding
PDF
Workshop angular
PPTX
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
PPTX
Progettato per specialisti del web
PPTX
AngularJS: server communication
PPT
Introduzione a jQuery
PDF
AngularJS-Intro
Angularjs
MVC2: non solo tecnologia
ASP.NET MVC 6 - uno sguardo al futuro
Angular js: routing
Customize ASP.NET Core scaffolding
Workshop angular
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
Progettato per specialisti del web
AngularJS: server communication
Introduzione a jQuery
AngularJS-Intro
Ad

Viewers also liked (20)

PPT
Greater Pittsburgh Arts Council 2008 Annual Meeting
PPT
Fqenlaceionico
PPT
Bobcat by Noah
PPTX
ds-connex: a Social Media nonprofit success story
PPTX
Latvia anta school
PPT
10 Sure Fire Tips
PPT
Burrowing Owl by Aaliyah
PPS
0903 Ayethadis
PPS
Krm Kongo Kanamal Atei Temmuz 2006
PPT
Reaching net-generation learners with social technologies
PPT
My Friends Descriptions 5th B
ODP
Tech Success: Web/2.0 startup HOWTO
PPT
Sample Works
PPT
Integracija poslovnega sistema
PPT
Presentatie UBN Forum Web 2.0
PDF
Ganamax
PDF
Web Is Dead 29 05 08
PPT
Graffiti Theatre
Greater Pittsburgh Arts Council 2008 Annual Meeting
Fqenlaceionico
Bobcat by Noah
ds-connex: a Social Media nonprofit success story
Latvia anta school
10 Sure Fire Tips
Burrowing Owl by Aaliyah
0903 Ayethadis
Krm Kongo Kanamal Atei Temmuz 2006
Reaching net-generation learners with social technologies
My Friends Descriptions 5th B
Tech Success: Web/2.0 startup HOWTO
Sample Works
Integracija poslovnega sistema
Presentatie UBN Forum Web 2.0
Ganamax
Web Is Dead 29 05 08
Graffiti Theatre
Ad

Similar to Zendframework Parte2 (20)

PDF
Dal RenderFragment ai Generics, tips for Blazor developers
PPTX
Novità di Asp.Net 4.0
PDF
react-it.pdf
PDF
Giovambattista Fazioli, 10 more things
PDF
Introduzione a Struts
PDF
Laravel Framework PHP
PPTX
Asp.net 4 Community Tour VS2010
PPT
#dd12 grillo daniele_xpages_tips_tricks_rev2
PDF
Fare con Zend Framework 2 ciò che facevo con ZF1
PDF
Creazione componenti con Vue js
PPT
Jakarta Struts
PDF
Integrare Zend Framework in Wordpress
PDF
Dependency injection questa sconosciuta
PDF
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
PDF
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
PPT
eZ publish - Extension
PPT
Java lezione 17
PPTX
Asp.NET MVC Framework
PDF
Drupal diventa un CMF e WordPress che fa? Slide WordCamp Milano 2019
PDF
Come portare il profiler di symfony2 in drupal8
Dal RenderFragment ai Generics, tips for Blazor developers
Novità di Asp.Net 4.0
react-it.pdf
Giovambattista Fazioli, 10 more things
Introduzione a Struts
Laravel Framework PHP
Asp.net 4 Community Tour VS2010
#dd12 grillo daniele_xpages_tips_tricks_rev2
Fare con Zend Framework 2 ciò che facevo con ZF1
Creazione componenti con Vue js
Jakarta Struts
Integrare Zend Framework in Wordpress
Dependency injection questa sconosciuta
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
eZ publish - Extension
Java lezione 17
Asp.NET MVC Framework
Drupal diventa un CMF e WordPress che fa? Slide WordCamp Milano 2019
Come portare il profiler di symfony2 in drupal8

Zendframework Parte2

  • 1. ZEND FRAMEWORK: IL NOSTRO “HELLO WORLD!”
  • 2. | 31 mar 2008 Zend Framework dalla A alla Zend | Creiamo la struttura dell'applicazione Creare la struttura per un progetto con Zend Framework è più facile di quanto immaginiamo utilizzando Zend Studio for Eclipse.
  • 3. | 31 mar 2008 Zend Framework dalla A alla Zend | Capire la struttura MVC application default controllers models views scripts html index.php .htaccess images / scripts / styles
  • 4. | 31 mar 2008 Zend Framework dalla A alla Zend | Il file .htaccess Per fare in modo che il Front Controller all'interno del bootstrap ( index.php ) riceva tutte le richieste degli utenti dobbiamo utilizzare il modulo mod_rewrite di Apache. Normalmente la nostra richiesta di esempio: http://localhost/post/list Genererebbe un errore 404 di pagina non trovata perchè post e list non sono cartelle presenti fisicamente nella DocumentRoot del nostro server web.
  • 5. | 31 mar 2008 Zend Framework dalla A alla Zend | Analizziamo il file .htaccess RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php Con questa semplice espressione regolare indirizziamo tutte le richieste verso index.php escludendo le risorse statiche. Le risorse statiche (immagini, fogli di stile, file javascript...) non devono essere elaborate dal Front Controller e per questo vengono escluse identificandole attraverso l'estensione.
  • 6. | 31 mar 2008 Zend Framework dalla A alla Zend | Il Bootstrap Zend Studio for Eclipse ha creato per noi anche il file index.php che prima abbiamo chiamato bootstrap. require_once 'Zend/Controller/Front.php'; set_include_path(....)‏ $controller = Zend_Controller_Front::getInstance(); $controller-> setControllerDirectory('../application/default/controllers'); $controller->throwExceptions(false); // should be turned on in development time // run! $controller->dispatch();
  • 7. | 31 mar 2008 Zend Framework dalla A alla Zend | I controller Come già detto in precedenza tutti i controller sono classi derivate da Zend_Controller_Action. Tutti i controller devo essere chiamati [ Nome ]Controller con la prima lettera del nome maiuscola poi tutto CamelCase . Devono essere salvati nel file [ Nome ]Controller.php all'interno della cartella dei controller che abbiamo specificato nel bootstrap.
  • 8. | 31 mar 2008 Zend Framework dalla A alla Zend | Perchè IndexController e indexAction Se nella richiesta l'utente non specifica nè un controller nè un'azione il front controller chiamerà automaticamente IndexController->indexAction . Se viene specificato un controller ma non un'azione verrà chiamata l'azione indexAction del controller specificato.
  • 9. | 31 mar 2008 Zend Framework dalla A alla Zend | IndexController class IndexController extends Zend_Controller_Action { /** * The default action - show the home page */ public function indexAction() { // TODO Auto-generated IndexController::indexAction() //action } } Tutte le azioni sono metodi della classe chiamate come [nome]Action() con la prima lettera minuscola e poi tutto CamelCase .
  • 10. | 31 mar 2008 Zend Framework dalla A alla Zend | Il ViewRender Il ViewRenderer è un helper che automaticamente visualizzerà la vista corrispondente all'azione chiamata. Ad esempio, se l'azione chiamata è la indexAction() di IndexController, il ViewRenderer visualizza automaticamente la vista index.pthml che si trova in application/views/scripts/index Generalizzando: [nomeAzione].phtml ../ application/views/scripts /[NomeController]
  • 11. | 31 mar 2008 Zend Framework dalla A alla Zend | index.pthml <!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;> <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;> <head> <meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot; /> <title>New Zend Framework Project</title> </head> <body> Hello, world! </body> </html>
  • 12. Zend Framework Simplicity, Meet Power [email_address] “ THANK YOU