debug_backtrace
(PHP 4 >= 4.3.0, PHP 5)
debug_backtrace — Gera um backtrace
Descrição
array debug_backtrace
( void
)
debug_backtrace() gera um backtrace.
Valor Retornado
Retorna um array associativo. Os elementos possivelmente retornados são como a seguir:
Nome | Tipo | Descrição |
---|---|---|
function | string | O nome da função atual. Veja também __FUNCTION__. |
line | integer | O número da linha atual. Veja também __LINE__. |
file | string | O nome do arquivo atual. Veja também __FILE__. |
class | string | O nome da classe atual. Veja também __CLASS__. |
object | object | O object atual. |
type | string | O tipo da chamada atual. Se for uma chamada a metodo, é retornado "->". Se for uma chamada a um metodo estatico, é retornado "::". Se é uma chamada a uma função, não é retornado nada. |
args | array | Se estiver dentro de uma função, lista os argumentos da função. Se estiver dentro de um arquivo incluÃdo, lista o(s) nome(s) do(s) arquivo(s). |
Exemplos
Example#1 Exemplo debug_backtrace()
<?php
// nome do arquivo: a.php
function a_test($str)
{
echo "\nHi: $str";
var_dump(debug_backtrace());
}
a_test('friend');
?>
<?php
// nome do arquivo: b.php
include_once '/tmp/a.php';
?>
O resultado é similar ao seguinte ao executar /tmp/b.php:
Hi: friend array(2) { [0]=> array(4) { ["file"] => string(10) "/tmp/a.php" ["line"] => int(10) ["function"] => string(6) "a_test" ["args"]=> array(1) { [0] => &string(6) "friend" } } [1]=> array(4) { ["file"] => string(10) "/tmp/b.php" ["line"] => int(2) ["args"] => array(1) { [0] => string(10) "/tmp/a.php" } ["function"] => string(12) "include_once" } }