Zend Framework Tutorial Series – Capítulo 1

Estou iniciando uma série de tutoriais[bb] sobre Zend Framework onde eu pretendo mostrar desde os conceitos básicos até os avançados.

 

Tentarei colocar um novo capítulo semanalmente, desta forma teremos uma janela boa para praticar o conteúdo proposto.

 

Este primeiro Tutorial da série visa demonstrar a instalação e configuração do ambiente bem como criar a estrutura de diretórios de uma aplicação utilizando o Zend_Tool.

 

Antes de mais nada, os pré-requisitos para continuar este tutorial são:

 

1- Conhecimento de PHP utilizando os conceitos de Orientação a Objetos[bb].
2- Configuração do ambiente (Apache, PHP, etc).
3- Domínio do Sistema Operacional que está utilizando.

 

IMPORTANTE: Caso você não possua este conhecimento eu sugiro que não continue com este tutorial e sim busque conhecer estes pré-requisitos.

 

Eu vou partir do princípio que você já possui o ambiente pra rodar PHP instalado em sua máquina[bb], ok?

 

Vamos lá!
  • Após terminar de ler este capítulo da série você estará apto a:
  • Configurar variáveis de ambiente do sistema operacional
  • Configurar domínios virtuais no apache
  • Configurar o sistema operacional para lidar com hosts locais
  • Criar a estrutura de diretórios de uma aplicação escrita em Zend Frameworkutilizando o Zend_Tool

 

BAIXANDO O ZEND_FRAMEWORK E CONFIGURANDO O AMBIENTE

 

Primeiramente, baixe o Zend Framework em: http://framework.zend.com/

 

Descompacte o conteúdo deste pacote no local que você desejar e inclua o conteúdo da pasta library no include_path do seu ambiente PHP.

 

Para setar o include_path você deverá alterar seu php.ini conforme orientações nesse link (http://www.php.net/manual/en/ini.core.php#ini.include-path).

 

Beleza!!! Agora vamos colocar o script do Zend_Tool no PATH do sistema operacional.

 

No Mac, eu editei o arquivo .bash_profile que se encontra no meu diretório home e coloquei o seguinte:
export PATH=~/bin:/usr/local/bin:/Users/adlermedrado/dev/share/zf/bin:$PATH onde /Users/adlermedrado/dev/share/zf é o local onde eu coloquei o conteúdo do arquivo que baixamos do site http://framework.zend.com e /bin é onde se encontram os scripts do Zend_Tool.

 

Em ambientes Windows[bb], você deve ir no Painel de Controle->Sistema->Avançado->Variáveis de Ambiente e na variável PATH (Se ela não existir, crie) colocar o caminho do local onde você descompactou o Zend Framework até o diretório bin.

 

IMPORTANTE: Eu coloquei essa configuração do Windows conforme lembrei de cabeça. Caso haja algum erro me desculpem, pois, eu não tenho nenhuma máquina windows aqui para verificar se o que falei está 100%.

 

Ok. Com as variáveis de ambiente configuradas, abra uma janela do terminal e digite o seguinte: zf.bat (windows) e zf.sh (*nix).

 

Se aparecer o help com uma listagem de comandos , está tudo certo. Caso o resultado seja uma mensagem de comando não existente ou algo parecido, verifique a variável PATH do seu sistema operacional. (Veja Figura 1)

 

1

 

CRIANDO A ESTRUTURA DA APLICAÇÃO

 

Agora que o Zend_Tool está acessível da linha de comando, vamos criar a estrutura de nosso projeto.

 

O Zend_Tool é uma aplicação que roda na linha de comando (CLI) que nos facilita a criação de projetos com Zend Framework.

 

Com ele nós podemos criar o projeto, controllers, actions, etc; Não precisa se preocupar pois veremos os comandos do Zend_Tool detalhadamente nos próximos capítulos.

 

A seguir você poderá criar a estrutura de um projeto. Preparado?

 

No diretório de sua escolha (aqui na minha máquina 

eu escolhi: /Users/adlermedrado/Sites/zf-series) digite o seguinte comando:

zf.sh create project zf-series (Lembre-se que em windows o comando é zf.bat ou somente zf).

 

Este comando criará a estrutura de diretórios necessária para uma aplicação com Zend Framework. (Veja Figura 2)

 

 

Você viu que dentro do diretório zf_series foram criados diversos diretórios mas nós entraremos em detalhes nesses diretórios conforme formos avançando nos tutoriais com excessão do diretório public o qual falaremos agora.

 

O diretório public é o diretório público da aplicação (duh!)  ou seja, neste diretório nós colocaremos os arquivos de imagens, javascript, CSS, etc. Este diretório será nosso DocumentRoot e como tal deve ser configurado no apache.

 

Os demais diretórios são da aplicação e não precisam ser acessados pela URL por intermédio do servidor web e isso nos dá uma segurança maior pois os arquivos com regras de negócio, configurações de conexão com banco de dados, etc, não precisam ser acessados pela URL para serem compilados e interpretados pelo PHP então, desta forma nós garantimos que serão acessívels pelo público somente arquivos de pouca importância (no sentido de segurança) como CSS, imagens e afins.

 

Como esta pasta é o DocumentRoot, nós devemos criar um domínio virtual para este projeto;  Nós faremos isso configurando o servidor web Apache Httpd.

 

CONFIGURANDO O SERVIDOR WEB

 

No diretório onde meu Apache está instalado eu tenho um arquivo chamado extras/httpd_vhosts.conf e será nele que adicionarei o domínio virtual para nossa aplicação.

 

Neste arquivo eu criei o meu virtual host da seguinte forma:

 

<VirtualHost *:80>
DocumentRoot “/Users/adlermedrado/Sites/zf-series/public”
ServerName zf-series
ServerAlias zf-series
ErrorLog “/private/var/log/apache2/zf-series-error_log”
CustomLog “/private/var/log/apache2/zf-series-access_log” common

 

<Directory “/Users/adlermedrado/Sites/zf-series/public”>
Options Includes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

 

</VirtualHost>

 

O próximo passo é configurar seu Sistema Operacional para que ele saiba que o endereço zf-series se encontra no domínio virtual definido acima.

 

Em meu Mac eu editei o arquivo /etc/hosts e ele ficou da seguinte forma:

 

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0 localhost

 

# Meus dominios locais
127.0.0.1 zf-series

 

Em um ambiente Windows você deve editar o arquivo C:WindowsSystem32driversetchosts e a edição dele é igual a do meu exemplo acima.

 

TESTANDO O AMBIENTE

 

Se nossas configurações forem bem sucedidas, se nós digitarmos em um browser a URL http://zf-series ela será direcionada para o index de nossa aplicação;

 

Se for mostrada uma tela de boas-vindas ao Zend Framework, a configuração foi realizada com sucesso[bb]. (Veja Figura 3).

 

3

 

Caso não funcione da forma correta, revise a configuração do domínio virtual e da configuração do DNS (hosts);

 

CONFIGURAÇÕES FINAIS

 

Este primeiro capítudo da nossa série termina por aqui.
No próximo eu entrarei em detalhes na estrutura de pastas criada pelo Zend_Tool e na estrutura MVC do Zend Framework; Nesta ocasião criaremos nosso primeiro controller e suas actions.

 

Espero que este tutorial seja útil para você.
Não esqueça de dar seu feedback. Ele é muito importante para os próximos capítulos da série.

 

Abraço.