Home > Backend Development > PHP Tutorial > 请教一个关于调试的问题

请教一个关于调试的问题

WBOY
Release: 2016-06-23 14:24:18
Original
978 people have browsed it

class A extends class B;
class B extends class C;
A->test();
A,B,C中分别有很多方法,有没有什么测试方法能追踪到 此时 test方法是在哪个类中?
我发现print_r和var_dump 把类名传进去,只能打印出属性信息,不能打印出方法的信息。
请问,查询方法信息有没有什么调试方法啊,刚开始学php,求指教。


回复讨论(解决方案)

var_dump(debug_backtrace());

var_dump(debug_backtrace());
这句话写在什么位置啊

写在test()方法里面

写在test()方法里面

可是不知道test方法在哪啊,现在想做的就是找到test方法的位置啊;

那只能用编辑器查找了吧,也很简单。

那只能用编辑器查找了吧,也很简单。

实际情况是A extends B ,B extends C , C extends D , D entends E .每个类中都有很多文件,如果A中有那个方法就会调用A的,B中没有才会在C中找。文本编辑器查的话得从A开始查,多麻烦啊

才几个文件就嫌麻烦了? 这是不行的。

可以通过php反射机制获取

$obj= new ReflectionClass("demo"); // demo 是一个类名echo "<pre class="brush:php;toolbar:false">";print_r($obj->getMethods());echo "
Copy after login
"

使用编辑器搜一下就知道了

source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template