Zend Framework 2 é legal! 
Mas como ele funciona ?!
Alefe Variani 
about.me/alefe_variani
Assuntos
Assuntos 
Vantagens
Assuntos 
Vantagens Divisão dos Diretórios
Assuntos 
Vantagens Divisão dos Diretórios 
O que ele executa primeiro?
Assuntos 
Vantagens Divisão dos Diretórios 
O que ele executa primeiro? 
Qual a sequência?
Assuntos 
Vantagens Divisão dos Diretórios 
O que ele executa primeiro? 
Qual a sequência? Instalação
Assuntos 
Vantagens Divisão dos Diretórios 
O que ele executa primeiro? 
Qual a sequência? Instalação 
Dicas
Vantagens
Vantagens 
Modelo MVC
Vantagens 
Modelo MVC Baseado em Eventos
Vantagens 
Modelo MVC Baseado em Eventos 
Melhores práticas com PHP
Vantagens 
Modelo MVC Baseado em Eventos 
Melhores práticas com PHP PHP5
Vantagens 
Modelo MVC Baseado em Eventos 
Melhores práticas com PHP PHP5 
Modular e Extensível
Vantagens 
Modelo MVC Baseado em Eventos 
Melhores práticas com PHP PHP5 
Modular e Extensível 
Comunidade forte
Divisão dos Diretórios
Divisão dos Diretórios
Divisão dos Diretórios 
/config 
Configurações gerais da aplicação. 
Atenção para o application.config.php. 
Nele são definidos os Módulos que serão utilizados ou carregados, além de 
também fazer a chamada dos arquivos locais e globais no diretório autoload, 
responsáveis pela ligação com banco.
Divisão dos Diretórios 
/data 
Arquivos de cache, podendo armazenar arquivos como diagramas da 
aplicação. De preferência, não adicionar arquivos com códigos.
Divisão dos Diretórios 
/module 
Todos os módulos da aplicação. 
Um módulo, para um problema específico da aplicação. 
Todos os módulos com sua própria configuração e estrutura MVC.
Divisão dos Diretórios 
/public 
Arquivos CSS, JS e imagens. 
Atenção para o index.php onde é rodada a aplicação, único arquivo que o 
usuário terá acesso.
Divisão dos Diretórios 
/vendor 
Bibliotecas utilizadas na aplicação. 
Caso utilizar um nova biblioteca é aqui que deve ser adicionada. 
Repare que já existe o composer e o próprio zendframework.
O que ele executa primeiro e qual a 
sequência? 
<zf2>/public/index.php 
O primeiro arquivo a ser rodado pela aplicação é o index.php que fica no 
diretório /public. 
Único arquivo que o usuário terá acesso. 
ZendMvcApplication::init(require ‘config/application.config.php’)->run();
O que ele executa primeiro e qual a 
sequência? 
ZendMvcApplication::init(require ‘config/application.config.php’)->run(); 
init(require ‘config/application.config.php’) – método de inicialização rápida e 
fácil da aplicação. <zf2>/config/application.config.php - fica responsável 
pela configurações dos módulos a serem carregados, mantendo o index.php 
sem alteração. 
run() – Roda aplicação através do evento MvcEvent. 
As duas funções estão localizadas no diretório 
(vendor/zendframework/zendframework/library/Zend/Mvc) 
arquivo Application.php.
O que ele executa primeiro e qual a 
sequência? 
<zf2>/config/application.config.php 
Onde estão definidos o módulos utilizados, caso seja criado um novo módulo 
e ele não for adicionado no array ‘modules’ ele não será carregado. 
No array ‘module_paths’ definimos o local dos módulos (./module e ./vendor) 
Obs.: se passarmos ‘a’ no array ‘modules‘, no array ‘module_paths‘ ele vai 
esperar que exista um módulo ‘a’ no diretório /module
O que ele executa primeiro e qual a 
sequência? 
<zf2>/module/<seumodulo>/Module.php 
Considerado por muitos o coração do módulo. 
Nele existe 3 funções 
onBootstrap() – responsável pelos eventos 
getConfig() – configurações do modulo, como route, view manager e 
controller 
getAutoloaderConfig() – responsável pelos Autoloder através dos namespaces 
A partir daqui o ZF2 encontra o /config/module.config.php.
O que ele executa primeiro e qual a 
sequência? 
<zf2>/module/<seumodulo>/config/module.config.php 
Irá tratar: 
● Rotas 
● Controles definidos 
● View manager (arquivos da view) 
● . . .
Dicas
Dicas 
Leia e consulte o 
manual do ZF2
Dicas 
Leia e consulte o 
manual do ZF2 
zfnapratica.com.br
Dicas 
Leia e consulte o 
manual do ZF2 
zfnapratica.com.br 
Grupo no facebook 
Zend Framework 2 Brasil
Dicas 
Leia e consulte o 
manual do ZF2 
zfnapratica.com.br 
Grupo no facebook 
Zend Framework 2 Brasil 
Grupo no google 
Zend Framework 2 Brasil
Dicas 
Leia e consulte o 
manual do ZF2 
zfnapratica.com.br 
Grupo no facebook 
Zend Framework 2 Brasil 
Grupo no google 
Zend Framework 2 Brasil 
modules.zendframework.com
Dicas 
Leia e consulte o 
manual do ZF2 
zfnapratica.com.br 
Grupo no facebook 
Zend Framework 2 Brasil 
Grupo no google 
Zend Framework 2 Brasil 
modules.zendframework.com Pratique
Referências 
- frameworksphp.com.br/zend-framework-2- 
legal-mas-como-ele-funciona/ 
- framework.zend.com/manual/2.3/en/index. 
html 
- zf2.readthedocs.org/en/latest/index. 
html#userguide
Obrigado!

Zend Framework 2 é legal ! Mas como ele funciona ?!

  • 1.
    Zend Framework 2é legal! Mas como ele funciona ?!
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
    Assuntos Vantagens Divisãodos Diretórios O que ele executa primeiro?
  • 7.
    Assuntos Vantagens Divisãodos Diretórios O que ele executa primeiro? Qual a sequência?
  • 8.
    Assuntos Vantagens Divisãodos Diretórios O que ele executa primeiro? Qual a sequência? Instalação
  • 9.
    Assuntos Vantagens Divisãodos Diretórios O que ele executa primeiro? Qual a sequência? Instalação Dicas
  • 10.
  • 11.
  • 12.
    Vantagens Modelo MVCBaseado em Eventos
  • 13.
    Vantagens Modelo MVCBaseado em Eventos Melhores práticas com PHP
  • 14.
    Vantagens Modelo MVCBaseado em Eventos Melhores práticas com PHP PHP5
  • 15.
    Vantagens Modelo MVCBaseado em Eventos Melhores práticas com PHP PHP5 Modular e Extensível
  • 16.
    Vantagens Modelo MVCBaseado em Eventos Melhores práticas com PHP PHP5 Modular e Extensível Comunidade forte
  • 17.
  • 18.
  • 19.
    Divisão dos Diretórios /config Configurações gerais da aplicação. Atenção para o application.config.php. Nele são definidos os Módulos que serão utilizados ou carregados, além de também fazer a chamada dos arquivos locais e globais no diretório autoload, responsáveis pela ligação com banco.
  • 20.
    Divisão dos Diretórios /data Arquivos de cache, podendo armazenar arquivos como diagramas da aplicação. De preferência, não adicionar arquivos com códigos.
  • 21.
    Divisão dos Diretórios /module Todos os módulos da aplicação. Um módulo, para um problema específico da aplicação. Todos os módulos com sua própria configuração e estrutura MVC.
  • 22.
    Divisão dos Diretórios /public Arquivos CSS, JS e imagens. Atenção para o index.php onde é rodada a aplicação, único arquivo que o usuário terá acesso.
  • 23.
    Divisão dos Diretórios /vendor Bibliotecas utilizadas na aplicação. Caso utilizar um nova biblioteca é aqui que deve ser adicionada. Repare que já existe o composer e o próprio zendframework.
  • 24.
    O que eleexecuta primeiro e qual a sequência? <zf2>/public/index.php O primeiro arquivo a ser rodado pela aplicação é o index.php que fica no diretório /public. Único arquivo que o usuário terá acesso. ZendMvcApplication::init(require ‘config/application.config.php’)->run();
  • 25.
    O que eleexecuta primeiro e qual a sequência? ZendMvcApplication::init(require ‘config/application.config.php’)->run(); init(require ‘config/application.config.php’) – método de inicialização rápida e fácil da aplicação. <zf2>/config/application.config.php - fica responsável pela configurações dos módulos a serem carregados, mantendo o index.php sem alteração. run() – Roda aplicação através do evento MvcEvent. As duas funções estão localizadas no diretório (vendor/zendframework/zendframework/library/Zend/Mvc) arquivo Application.php.
  • 26.
    O que eleexecuta primeiro e qual a sequência? <zf2>/config/application.config.php Onde estão definidos o módulos utilizados, caso seja criado um novo módulo e ele não for adicionado no array ‘modules’ ele não será carregado. No array ‘module_paths’ definimos o local dos módulos (./module e ./vendor) Obs.: se passarmos ‘a’ no array ‘modules‘, no array ‘module_paths‘ ele vai esperar que exista um módulo ‘a’ no diretório /module
  • 27.
    O que eleexecuta primeiro e qual a sequência? <zf2>/module/<seumodulo>/Module.php Considerado por muitos o coração do módulo. Nele existe 3 funções onBootstrap() – responsável pelos eventos getConfig() – configurações do modulo, como route, view manager e controller getAutoloaderConfig() – responsável pelos Autoloder através dos namespaces A partir daqui o ZF2 encontra o /config/module.config.php.
  • 28.
    O que eleexecuta primeiro e qual a sequência? <zf2>/module/<seumodulo>/config/module.config.php Irá tratar: ● Rotas ● Controles definidos ● View manager (arquivos da view) ● . . .
  • 29.
  • 30.
    Dicas Leia econsulte o manual do ZF2
  • 31.
    Dicas Leia econsulte o manual do ZF2 zfnapratica.com.br
  • 32.
    Dicas Leia econsulte o manual do ZF2 zfnapratica.com.br Grupo no facebook Zend Framework 2 Brasil
  • 33.
    Dicas Leia econsulte o manual do ZF2 zfnapratica.com.br Grupo no facebook Zend Framework 2 Brasil Grupo no google Zend Framework 2 Brasil
  • 34.
    Dicas Leia econsulte o manual do ZF2 zfnapratica.com.br Grupo no facebook Zend Framework 2 Brasil Grupo no google Zend Framework 2 Brasil modules.zendframework.com
  • 35.
    Dicas Leia econsulte o manual do ZF2 zfnapratica.com.br Grupo no facebook Zend Framework 2 Brasil Grupo no google Zend Framework 2 Brasil modules.zendframework.com Pratique
  • 36.
    Referências - frameworksphp.com.br/zend-framework-2- legal-mas-como-ele-funciona/ - framework.zend.com/manual/2.3/en/index. html - zf2.readthedocs.org/en/latest/index. html#userguide
  • 37.