Artigos sobre como começar com Zend Framework podem ser encontrados aos montes pela internet, posso citar aqui alguns, como o tutorial Getting Started with Zend Framework publicado por Rob Allen, que talvez seja o mais famoso deles, e outros como Zend Framework Tutorial Series, Como Criar Um Projeto Usando O Zend Tool do Zend Framework ou Zend – Início, cada um deles com uma ênfase e abordagem diferente, e alguns já desatualizados por conta da velocidade de atualizações do próprio framework.
Mas se já existem tantos assim, por que escrever mais um? Bom, meu intuito com esse artigo é proporcionar uma abordagem mais simples que as frequentemente mostradas, que existem diferentes formas de montar a estrutura do seu projeto com Zend Framework, e que esteja atualizada com a versão 1.11.x do Framework (a versão estável mais recente até esse momento, em março de 2011).
Instalação do Ambiente
Antes de iniciar o desenvolvimento de aplicações com Zend Framework, vou presumir que você já tenha alguma experiência com PHP, e também que tenha um ambiente de desenvolvimento com um servidor web (preferencialmente apache) funcionando com php. Um banco de dados instalado não é obrigatório, mas será necessário para construir aplicações maiores com acesso a dados.
Caso você não tenha esse ambiente preparado, você poderá instalá-los individualmente indo aos sites daApache Foundation e do PHP, além do site do seu banco de dados de preferência, e baixar as últimas versões dos softwares e instalá-los. Além dessa forma existem alguns pacotes prontos com todas essas aplicações para você realizar uma única instalação, um desses pacotes é o Zend Server, que já inlcui o Zend Framework, no site da Zend.
Download do Zend Framework
Se você realizou a instalação do Zend Server como dito acima, o download e instalação do Zend Framework já foi realizado junto com ele, caso contrário você deve ir a Página de Downloads do Zend Framework e baixar preferencialmente o Full Package, você baixará um arquivo compactado contendo a pasta bin, onde está o zend tool, a pasta library onde estão de fato os arquivos do framework, e diversas outras pastas contendo exemplos e bibliotecas de terceiros que não são relevantes para esse artigo.
Criação da Estrutura de Diretórios do Zend Framework
Fig. 1 - Estrutura de Diretórios do Zend Framework
O Zend Framework permite que você crie praticamente qualquer estrutura para armazenar os arquivos que de fato compõem sua aplicação. Na minha opinião isso mais dificulta do que facilita o aprendizado com Zend Framework, pois o desenvolvedor iniciante, na biblioteca, fica meio perdido com relação a como montar a melhor estrutura para trabalhar com o framework. Felizmente para isso existe uma estrutura recomendada pela Zend (fig 1) e é utilizando essa estrutura que vamos trabalhar nesse tutorial.
Existem diversas formas de se criar essa estrutura, cada uma delas mais fácil que a outra, mas que vão depender das ferramentas que você está utilizando.
Zend Tool
O primeiro modo de criar a estrutura de diretórios do Zend Framework e utilizando o Zend Tool, caso você não tenha configurado seu ambiente com Zend Server, antes de utilizar o Zend Tool, você deverá copiar os arquivos do Zend Tool que estão localizados na pasta bin, juntamente com os outros arquivos baixados do Zend Framework, para a pasta de arquivos binários dentro da sua instalação do PHP.
No caso de ambientes Linux e Unix essa pasta geralmente está localizada em um dos seguintes caminhos:
- /usr/bin
- /usr/local/bin
- /usr/local/ZendServer/bin/
- /Applications/ZendServer/bin/
No caso de ambientes Windows essa pasta geralmente está localizada em um dos seguintes caminhos:
- C:PHP
- C:Program FilesZendServerbin
- C:WAMPPHPbin
Caso você tenha instalado o Zend Server isso já foi feito automaticamente junto com a instalação
Agora que o Zend Tool já foi instalado no sistema e adicionado como uma variável path, tudo que você terá que fazer para criar a estrutura de diretórios para o Zend Framework é abrir seu console, ou prompt de comando navegar até a pasta onde deseja criar a estrutura de diretórios (isso pode variar entre Windows, Linux e MacOS e pode exigir um pouco de conhecimento em linha de comando, mas não tão complicado assim) e digitar o comando a seguir substituindo nome-do-projeto pelo nome do seu projeto:
Por fim você deve verificar se a pasta Zend foi copiada para dentro do diretório library criado pelo comando acima, caso ela tenha sido copiada já está tudo certo, caso contrário basta copiá-la de dentro do diretório library, incluido junto com o Zend Framework que você havia baixado e descompactado. Você também pode copiar essa pasta para dentro do include_path do seu PHP, e com isso poderá utilizar o Zend Framework em vários projetos sem ter que copiá-lo para cada um deles.
Zend Studio
Outra forma de criar a estrutura de diretórios necessária para se desenvolver com Zend Server é utilizando o Zend Studio, o Zend Studio é uma IDE de desenvolvimento baseada em eclipse e desenvolvida pela própria zend e pode ser adquirida na página do Zend Studio. Após adquirir e instalar o Zend Studio tudo que você precisa fazer é clicar em File->New->Zend Framework Project, preencher o campo nome com o nome do projeto e clicar em “Finish”. Basicamente o que a ferramenta faz é chamar o zend tool, que foi instalado juntamente com ela, e executar o mesmo comando do item anterior, mas dessa forma você não precisa saber absolutamente nada sobre linha de comando ou configuração de variáveis de sistema.
Manualmente
Para realizar a criação da estrutura manualmente você precisará criar toda a estrutura de pastas manualmente, conforme mostrado na figura 1 acima e alterar quatro arquivos, o primeiro deles o arquivoindex.php localizado no diretório public incluindo a seguinte seqüência de código:
Esse é o arquivo que irá iniciar a sua aplicação,e basicamente o que ele faz é configurar onde estão todos os diretórios e arquivos necessários para iniciar sua aplicação, configurar o ambiente e iniciar a aplicação de fato.
O segundo é o arquivo bootstrap.php no diretório application com o seguinte código:
Esse arquivo é o arquivo de Bootstrap da aplicação, nele você poderá incluir basicamente tudo que for necessário para ser inciado juntamente com a aplicação.
Repare que em nenhum dos dois arquivos a tag PHP é fechada, isso é feito propositalmente para evitar o envio de informações para o navegador.
Além disso você deve alterar o arquivo application.ini dentro do diretório config com a seguinte informação:
Esse é o arquivo de configuração da sua aplicação, ele prevê a existência de quatro tipos de ambientes distintos, o ambiente de desenvolvimento, teste, revisão e produção, variando exclusivamente no modo como eles exibirão as mensagens de erro do sistema.
Por último você deve criar (caso não exista) um arquivo chamado .htaccess no diretório public e incluir o seguinte conteúdo:
Esse arquivo é responsável por direcionar todas as requisições ao servidor naquele diretório e nos diretórios abaixo deles para o arquivo index.php exceto se essa requisição seja feita a um arquivo válido e existente em um desses diretórios, isso permite que você possa armazenar imagens, folhas de estilo, arquivos javascript, além de outros, dentro do diretório public e consiga acessá-los normalmente, mas que qualquer outra requisição, que não seja feita a algum desses arquivos, será enviada ao index.php para ser tratada.
Para que esse arquivo funcione e conseqüentemente o restante da sua aplicação, o seu servidor web deve estar configurado para aceitar module rewrite, caso não esteja, procure na documentação referente a ele como realizar essa configuração.
Conclusão
Como você pode perceber o objetivo desse artigo foi mostrar as diversas formas que existem de configurar os diretórios iniciais para se trabalhar com Zend Framework. Agora você deve escolher o que mais lhe agrada e se adapta com as ferramentas que você utiliza e pode começar a desenvolver suas aplicações com o framework.
Você pode baixar os arquivos usados nesse tutorial, você fará o download de um arquivo compactado contendo toda a estrutura de diretórios do Zend Framework juntamente com os arquivos que você criaria utilizando o processo manual e que são criados automaticamente pelos outros dois processos. Caso utilize esses arquivos ainda será necessário copiar a pasta Zend para dentro do diretório library que não foi incluída com esse arquivo.
Fora de tópico Mostrar Código Esconder Código Mostrar EmoticonEsconder Emoticon