Windows XP Professional PHP 5.2.0 Apache HTTP Server 2.2.4 Eclipse 3.2.1 com plugin PDT Zend Debugger 5.2.3
Instalação do Apache HTTP Server
O instalador pode ser obtido aqui. Instalar o apache como um serviço. Ter em atenção que a instalação como um serviço necessita do porto 80 livre, por isso, é necessário parar o serviço do IIS caso este esteja em execução (ou qualquer outro serviço que use este porto. O valor do porto pode, no entanto, ser alterado após a instalação do servidor). No meu computador, o Apache ficou instalado em C:/Programas/Apache Software Foundation/Apache2.2/ (APACHE_HOME).
Instalação do PHP
Escolher a versão zipada do PHP que pode ser obtida aqui. Descomprimir para a pasta dos Programas. No meu computador ficou em C:/Programas/PHP/ (PHP_HOME). A configuração do ficheiro php.ini deixo-a para vocês, mas por enquanto podem simplesmente renomear o ficheiro 'php-ini.recommended' para 'php.ini'.
Instalação do Eclipse com o plugin PDT
Não obter a versão que se encontra no site do Eclipse. A versão correcta pode ser obtida no site da Zend. Encontram-se várias versões para os diferentes sistemas operativos no link http://downloads.zend.com/pdt/all-in-one/. A que eu escolhi foi esta. Este ficheiro inclui o Eclipse e os plugins WST e PDT.
Instalação do Zend Debugger
Este também inclui várias versões para os diferentes SOs que se encontram no link http://downloads.zend.com/pdt/server-debugger/. A versão escolhida foi esta. Descomprimir o ficheiro para a pasta dos Programas, por exemplo, C:/Programas/ZendDebugger-5.2.3-Windows-i386/.
Configuração do Apache Server
Abrir o ficheiro httpd.conf que se encontra na pasta APACHE_HOME/conf. No final do ficheiro colocar o seguinte texto:
| Code: | LoadModule php5_module "c:/Programas/php/php5apache2_2.dll"
AddType application/x-httpd-php .php PHPIniDir "c:/Programas/php" | Podem aproveitar este passo para mudar o porto de escuta do servidor. Procurem pela directiva Listen que deve ter o valor 80 e mudem para o porto que preferirem (eu escolhi o 3128). Guardar o ficheiro e reiniciar o servidor. Neste momento já deve ser possível visualizar uma página PHP. Para testar, criar uma página de teste que execute a função phpinfo(). A pasta raiz do servidor é APACHE_HOME/htdocs. Coloquem lá o ficheiro de testes e abram-no no navegador. Configuração do PHP Abrir o ficheiro php.ini que encontra em PHP_HOME. No final do ficheiro colocar o seguinte texto:
| Code: |
zend_extension_ts = C:/Programas/PHP/ZendDebugger-5.2.3-Windows-i386/5_2_x_comp/ZendDebugger.dll
zend_debugger.allow_hosts = 127.0.0.1
zend_debugger.expose_remotely = always
zend_debugger.connector_port = 10013
| Reiniciar novamente o servidor Apache e visualizar a página de testes no browser. Deverá conter uma nova secção com o título Zend Debugger. Configuração do Eclipse Abrir o Eclipse. Se for a primeira vez irá surgir uma janela a perguntar a localização do Workspace (O Workspace é uma pasta que será a pasta raiz onde serão colocados por omissão os projectos novos criados). Localizar o menu Window->Preferences. Localizar na árvore de opções o nó PHP->PHP Servers. Editem o servidor pré-definido para apontar para o URL do servidor Apache. No meu caso, o URL é http://localhost:3128/. Seleccionar o nó PHP->PHP Debug e verifiquem as opções pré-definidas. Em princípio, estas opções devem já estar todas bem configuradas, mas aqui ficam as minhas: Debug Options: Default Server: Default PHP Web Server Default PHP Executable: PHP5 Default Transfer Encoding: ISO 10646/Unicode (UTF8) Break at First Line OFF Workspace Options: Debug Port 10000 Use PHP Debug Perspective ON Run with Debug Info ON Open in Browser ON Open PHP Debug Views ON Para testar a funcionalidade de debug criar um projecto PHP, mas com a raiz da pasta de projecto em APACHE_HOME/htdocs (o meu projecto ficou em APACHE_HOME/htdocs/PHPTeste/). Embora o Eclipse possua a funcionalidade automática de publicar o site para o servidor, este não faz o pretendido. Ou é um bug ou foi algo que me escapou. Criar pelo menos dois ficheiros PHP, por exemplo, index.php e pagina1.php. Coloquem um link no ficheiro index.php que redireccione para a pagina1.php e coloquem algum código php com um breakpoint só para testar que o Eclipse pára lá. Na pagina1.php coloquem também algum codigo .php com um breakpoint. Esta página serve para testar que existe realmente uma sessão de debug a decorrer com a capacidade de transportar valores de variáveis de uma página para outra. Para fazer debug é necessário criar uma nova configuração de execução. Localizar o menu Run->Debug. Seleccionar o nó PHP Web Page e escolher a opção New.
Deverá surgir uma nova janela onde é necessário indicar qual o ficheiro a partir do qual se deve iniciar a sessão. Indiquem o ficheiro index.php. No meu caso foi /PHPTeste/index.php. Desactivar a opção Auto-generate do URL e coloquem o URL do ficheiro index.php. Mais uma vez, na minha situação foi http://localhost:3128/PHPTeste/index.php. Carregar em Apply para guardar a configuração e carregar em Debug. Se tudo correr bem o Eclipse irá parar no primeiro breakpoint colocado no ficheiro index.php e escolhendo a perspectiva PHP Debug deve ser possível ver quais as variáveis existentes na página e os seus valores incluindo também os vectores especiais do PHP, nomeadamente, $_GET, $_POST, .... Se no navegador carregarem no link criado na página index.php verão que o Eclipse pára no primeiro breakpoint da página1.php. De notar que este tutorial pode ser aplicado a outros sistemas operativos tais como Linux e MAC OS. Espero que isto ajude a melhorar o vosso ambiente de desenvolvimento.  |