PHP Coupé

Aprendendo

Debug

O sistema de Debug do PHP Coupé é o melhor amigo do desenvolvedor. Ele revela detalhes dos recursos que estão sendo utilizados pela sua aplicação, assim como o tempo de execução dos Módulos e das consultas a banco de dados [feitas através da classe Coupé Database].

Utilizando o debug

Para utilizarmos o Debug basta ativa-lo nas configurações do PHP Coupé colocando como TRUE o vetor $config['ACTIVE_DEBUG'].

$config['ACTIVE_DEBUG'] = TRUE;

Feito isso, ao recarregar a página de seu projeto, você verá uma série de informações sobre sua aplicação em uma tabela e seu layout será alterado com marcações que indicam a localização no layout de Módulos, Conteúdo, Blocos de Conteúdo, etc. Dessa forma você sabe rápidamente o que, no seu layout, faz parte do Modelo do site, do Conteúdo, ou foi gerado dinâmicamente a partir da execução de um módulo.

Use o debug somente em desenvolvimento. Debug habilitado em modo de produção revelará aos usuários dados sobre seu sistema.

Customizando

Você também pode adicionar outras informções que achar relevante ao relatório de debug. Para que o relatório de debug do PHP Coupé permitisse adicionar resultados customizáveis, ele é construido dinâmicamente utilizando-se quatro métodos:

  1. group - Cria um grupo de resultados na tabela;
  2. description - Adiciona uma descrição sobre os resultados exibidos;
  3. timer - Exibe o tempo de execução de um processo;
  4. mensage - Exibe uma mensagem qualquer sobre determinado processo.

Esses métodos devem sempre ser invocados através da função debug() do PHP Coupé onde o primeiro parâmetro é uma string que indica qual dos quatro métodos se quer executar. E o segundo parâmentro, podendo ser um array ou uma string, informa as propriedades do método que você está executando.


Em destaque na imagem o resultado da utilização das quatro funções que montam a tabela de exibição do debug e permitem sua customização adicionando outros resultados.

1. Para adicionar informações customizadas ao relatório de debug, o primeiro passo é criarmos um grupo onde as novas informações customizadas serão exibidas. Isso é feito utilizando o método debug() do PHP Coupé passando como parâmetro a string que diz o que queremos criar (no caso um grupo), e o array com as propriedades do grupo (primeiro o título do grupo, e segundo um array com todos processos que serão agrupados):

$this->debug( 'group', array('MEUS PROCESSOS', array('proces', 'procesB') ) );

2. Criado o grupo com os IDs dos processos que serão exibidos dentro dele ('processoA', 'processoB'), devemos criar uma descrição para cada processo. Fazemos isso usando o método debug() mais uma vez. Só que agora dizendo que vamos inserir uma descrição e informando o ID do processo a quem pertece a descrição:

$this->debug( 'description', array('procesA', 'PDFs gerados' ) );
$this->debug( 'description', array('procesB', 'Imagens usadas' ) );

Com o grupo e as descrições dos processos que serão exibidos nele criados, podemos começar a enviar as informações para o relorátio em forma de mensagens e/ou em forma de timer (tempo de execução do processo).

3. Para adicionar debugs em forma de mensagens ao relatório devemos usar mais uma vez o método debug() onde informamos que queremos adicionar uma mensagem ao relatório e passamos o array de configurações com o ID do processo a quem pertence, a mensagem e, opcionalmente, podemos definir no único array a descrição do processo:

$this->debug( 'mensage', array('procesB', $imagem_iserida) );
$this->debug( 'mensage', array('procesB', $outra_imagem) );

4. Finalizando nosso relatório customizado, vamos adicionar o tempo de execução de alguns trechos de código e inclui-los na área criada no relatório que demos o nome 'procesA'. Para isso informamos que queremos adicionar uma timer ao relatório e passamos o array de configurações com o ID do processo a quem pertence, a ação (start, pause, unpause e stop) e, opcionalmente, podemos redefinir no array a descrição do processo e também inserir uma mensagem que descreva qual ação está tendo o tempo depurado:

$this->debug('timer', array('procesA', 'start', 'Gerando PDF XPTO', ''));

// entre a acao 'start' e 'stop' colocamos os codigos que serao depurados

$this->debug('timer', array('procesA', 'pause'));

// outros codigos que nao dizem respeito ficam entre 'pause' e 'unpause'

$this->debug('timer', array('procesA', 'unpause'));

$this->debug('timer', array('procesA', 'stop'));

Para saber mais sobre as funções de debug do PHP Coupé visite Classes Coupé - Coupé Debug

Aprendendo

Mudar idioma:

Versão atual: 0.5
Licenciado sob Creative Commons by-nd

Desenvolvido por Samuel Corradi 2008.