如果我们想知道某个方法被谁调用了? debug_print_backtrace可以解决!~
测试代码: - <?php
- class a{
- function say($msg) {
- echo "msg:".$msg;
- echo "<pre>";debug_print_backtrace();
- }
- }
-
- class b {
- function say($msg) {
- $a = new a();
- $a->say($msg);
- }
- }
-
- class c {
- function __construct($msg) {
- $b = new b();
- $b->say($msg);
- }
- }
-
- $c = new c("test");
输出结果:- msg:test
- #0 a->say(test) called at [/var/www/test/test0723.php:12]
- #1 b->say(test) called at [/var/www/test/test0723.php:19]
- #2 c->__construct(test) called at [/var/www/test/test0723.php:23]
|