Olá pessoal.
Vou mostrar como debugar aplicações em php que estejam rodando em ambiente de teste.
Para isso vou utilizar:
- MAMP(Mac OS Apache Mysql Php) (download)
- XDebug (download)
- MacGDBp (download)
Comece fazendo o download do Php Remote Debugging paraMac OS X.
Descompacte o arquivo.
Dentro da pasta gerada pela descompactação você vai encontrar subpastas que correspondem a versões do PHP.
No meu caso a versão do PHP é a 5.2.
Abra a pasta correspondente a sua versão e de um ls. O único arquivo será o xdebug.so.
Vamos copiar esse arquivo para a pasta de extensões do php.
cp xdebug.so /Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-*
Feito isso precisamos configurar o XDbug no php.ini.
Abra o php.ini com um editor de sua escolha, vou usar o TextMate:
mate /Applications/MAMP/conf/php5/php.ini
Com o arquivo aberto, busque pelo termo [xdebug].
Descomente a primeira linha e a dicione:
zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"
xdebug.remote_enable = On
xdebug.remote_autostart = 1
Deixando dessa maneira:
[xdebug]
zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"
xdebug.remote_enable = On
xdebug.remote_autostart = 1
Feito isso. Precisamos alterar mais algumas linhas também no php.ini mas referentes as configurações do Zend.
Logo a baixo do bloco do [xdbug] encontramos o bloco [Zend]. Pois bem, comente as três linhas desse bloco.
O final do meu arquivo ficou dessa maneira:
[Zend]
;zend_optimizer.optimization_level=15
;zend_extension_manager.optimizer=/Applications/MAMP/bin/php5/zend/lib/Optimizer-3.3.9
;zend_optimizer.version=3.3.9
Agora reiniciei o MAMP. O XDebug deve estar instalado.
É possível verificar isso observando o phpinfo().
Quando comecei a escrever esse tutorial meu objetivo era debugar utilizando o TextMate.
Mas não consegui tal feito, não por enquanto. Em breve quem sabe
.
Ao invés do TextMate, encontrei um aplicativo de interface simples e intuitiva chamado MacGDBp.
Baixe esse software e instale esse aplicativo.
O programa funciona da seguinte forma.
Depois de iniciado, ele vai começar a debugar o arquivo da primeira requisição do servidor. Caso não seja criado nenhum breakpoint o debug inicia na primeira linha do arquivo, caso contrario inicia na linha do breakpoint.
Ao final do debug, o MacGDB não vai ficar te perturbando querendo debugar qualquer requisição.
Para começar uma nova sessão de debug é preciso reiniciar o debugger.
Bom é isso.
Até a Próxima!
Tags: php mac

