Demorei bastante para criar um post mais atual sobre debugar, mais específico ainda, no Mac OS Yosemite (creio que para as novas versões deva funcionar também, quando existirem). Essa demora deu-se em de fato eu não estar utilizando ainda na plataforma da maçã, confesso, relaxo de minha parte. Este post visa explicar de forma simples as configurações do Xdebug para o Sistema Operacional Mac OS Yosemite (10.10.3, no meu caso).
[xdebug] zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
[xdebug] # Habilitando a extensão zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so # Habilitando o debug xdebug.remote_enable=1 # Definindo a porta. Ponto importantíssimo: Em todos os tutoriais informa a porta 9000 # no entanto para o Mac OS (pelo menos para mim) somente funcionou na porta 9001! xdebug.remote_port=9001 # Mais configurações que o próprio Netbeans recomenda xdebug.var_display_max_children = 999 xdebug.var_display_max_data = 999 xdebug.var_display_max_depth = 100 xdebug.max_nesting_level = 2048 # Habilitando a IDE para o xdebug, este é o nome configurado no próprio Netbeans xdebug.idekey=netbeans-xdebugFeito isso já temos tudo o que precisamos para debugar com PHP. Agora basta configurar o projeto no Netbeans.
<?php
$nomes = [
'Andre',
'Erik',
'Alex',
'Lucas',
'Seu nome aqui'
];
foreach($nomes as $nome) {
echo $nome . '<br />';
}
Após isso, no Netbeans, adicione um breakpoint logo no início do foreach.
Antes que debuguemos, precisamos configurar o projeto e startar o server embutido no nosso diretório de teste. Para isso, via terminal acesse a pasta de seu projeto e digite o seguinte:
php -S localhost:8080 -c /caminho/do/seu/php.iniEste php.ini é o arquivo que você adicionou as configurações do xdebug agora há pouco. O resultado deve ser algo como:
Apesar de exibir um alerta sobre a versão do minha Zend Engine, o meu Xdebug funciona normalmente.
Ok, já estamos "no ar", agora vamos à configuração! Abra as preferências do Netbeans e clique sobre a logo do PHP e em seguida na aba "Debugging".
Informe a porta 9001, a Session ID: netbeans-xdebug, clique em Apply e depois em Ok.
Agora é o momento de configurar o projeto. Clique com o direito sobre o nome do projeto e vai em "Properties". Acesse a seção "Run Configuration" e informe as seguintes configurações:
Run as: Local Web Site (running on localweb server)
Projetct URL: https://www.andrebian.com
Index File: em branco
Agora estamos prontos!
Em seguida clique sobre o botão de debug.
Isto fará com que o chrome abra. Em sua URL podemos claramente ver parâmetros de debug e uma tela em branco, afinal de contas, ele capturou logo no início do foreach, então nada ainda será impresso, somente ao passar pelo loop.
Mas ao olharmos no Netbeans novamente... maravilha!
Prontinho! Já é possível debugar em PHP no seu Mac. Faça bom proveito desta ferramenta!
Caso você esteja no Linux as configurações são bem semelhantes e, provavelmente ao pegar as configurações padrões do Netbeans (porta 9000) deve funcionar. Caso reste alguma dúvida com relação a instalação do Xdebug, sugiro ler este artigo do Erik Figueiredo.