Home >Backend Development >PHP Tutorial >PHP debug_backtrace() 函数

PHP debug_backtrace() 函数

WBOY
WBOYOriginal
2016-06-23 13:27:44819browse

PHP debug_backtrace() 函数生成一个 backtrace

该函数返回一个关联数组

下面是可能返回的元素
function 字符串 当前的函数名
line 整数 当前的行号
file 字符串 当前的文件名
object 对象 当前对象
type 字符串 当前的调用类型,可能的调用: 返回: “->” - 方法调用返回: “::” - 静态方法调用返回 nothing - 函数调用
args 数组 如果在函数中,列出函数参数。如果在被引用的文件中,列出被引用的文件名

For Example one:

 class Hello{        private    $var;        public     $var2;        protected  $var3;    public function __construct($var,$var2,$var3){            $this->var=$var;            $this->var2=$var2;            $this->var3=$var3;        }    }function test(Hello $hello){        echo "Hi this is a test function"."<br>";        print_r(debug_backtrace());}$hello2=new Hello('A','B','C');test($hello2);

实例One输出结果如下:

Hi this is a test function
Array ( [0] => Array (
[file] => D:\www\MyProjecttest\index4.php
[line] => 52
[function] => test
[args] => Array ( [0] => Hello Object ( [var:Hello:private] => A [var2] => B [var3:protected] => C ) ) ) )

注:在此只输出四个参数,分别是:file,line,function,args;

For Example Two:

class Hello{        private    $var;        public     $var2;        protected  $var3;   public function __construct($var,$var2,$var3) {      $this->var=$var;      $this->var2=$var2;      $this->var3=$var3; }    function test(Hello $hello){       echo "Hi this is a test function"."<br>";       print_r(debug_backtrace());   }}$hello2=new Hello('A','B','C');$hello2->test($hello2);

实例Two输出结果如下:

Hi this is a test function
Array ( [0] => Array (
[file] => D:\www\MyProjecttest\index4.php
[line] => 54
[function] => test
[class] => Hello
[object] => Hello Object ( [var:Hello:private] => A [var2] => B [var3:protected] => C )
[type] => ->
[args] => Array ( [0] => Hello Object ( [var:Hello:private] => A [var2] => B [var3:protected] => C ) ) ) )

注:在此所有参数都输出了,分别是:file,line,function,class,object,type,args;

版权声明:本文为博主原创文章,未经博主允许不得转载。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn