PHP Debug

Publicado por Celso Goya em 03/11/2004

[ Hits: 9.973 ]

 


PHP Debug



Existem algumas funções no PHP que ajudam muito a gente na hora de depurar um programa. Precisei usar duas delas para poder depurar um programa baseado em classes PHP que geravam um número muito grande de arrays.

A primeira função é o var_dump, que fornece informações detalhadas sobre uma variável. A outra é o print_r que exibe as informações de forma mais amigável.

Veja no exemplo a seguir como usar estas duas funções. Construí este exemplo com uma estrutura composta por duas classes, sendo que a segunda herda a primeira.

<?php
class base
{
   var $tag;
  
   function base()
   {
      $this->tag = 0;
   }
  
   function setTag($intTag)
   {
      $this->tag = intval($intTag);
   }
  
}

class Custom_base extends base
{
   var $collection_tag;
  
   function Custom_base()
   {
      for($i=1;$i<=10;$i++){
         $this->collection_tag[] = new base();
      }
      
      for($i=0;$i<count($this->collection_tag);$i++){
         $this->collection_tag[$i]->setTag(rand(1,100));
      }
      
   }
  
}

$tagIterator = new Custom_base();
?>
<html>
<body>
<h1>var_dump</h1>
<pre style="background-color:rgb(220,220,220)">
Informações de uma classe
<?
var_dump($tagIterator);
?>

Informações de um array
<?
var_dump($tagIterator->collection_tag);
?>

Informações de uma variável
<?
var_dump($tagIterator->collection_tag[0]);
?>

Informações do servidor
<?
var_dump($_SERVER);
?>
</pre>

<h1>print_r</h1>
<pre style="background-color:rgb(220,220,220)">
Informações de uma classe
<?
print_r($tagIterator);
?>

Informações de um array
<?
print_r($tagIterator->collection_tag);
?>

Informações de uma variável
<?
print_r($tagIterator->collection_tag[0]);
?>

Informações do servidor
<?
print_r($_SERVER);
?>

</pre>

</body>
</html>
Outras dicas deste autor

Projeto Software Livre São Paulo

Anti-Microsoft

Java :: Squirrel-SQL Client

Usenet e FTP

Offline browsing :: baixando sites inteiros

Leitura recomendada

Instalando Zend Framework

FirePHP: Depurador de códigos PHP

Driblando o REGISTER GLOBALS OFF

Exemplo de conexão ao banco de dados orientada a objeto em PHP+MySQL

Gerando documentação de projetos PHP com o DocBlox

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts