在PHP中获取函数调用者的__FILE__常量
发布时间:2020-12-13 16:32:30 所属栏目:PHP教程 来源:网络整理
导读:我知道 PHP中的__FILE__魔术常数将变成当前执行文件的完整路径和文件名.但是有没有办法可以获得与函数调用文件相同的信息?例如: //foo.php:include "bar.php";call_it();//bar.phpfunction call_it() { echo "Calling file: ".__CALLING_FILE__;} 这将输出
我知道
PHP中的__FILE__魔术常数将变成当前执行文件的完整路径和文件名.但是有没有办法可以获得与函数调用文件相同的信息?例如:
//foo.php: include "bar.php"; call_it(); //bar.php function call_it() { echo "Calling file: ".__CALLING_FILE__; } 这将输出调用文件:… / foo.php. 我知道没有__CALLING_FILE__魔术常数,或一个魔术常数来处理这个,但是有没有办法可以得到这些信息?最小的黑客解决方案将是理想的(例如,使用堆栈跟踪将是相当黑客),但最终我只需要它工作.
你应该看看堆栈跟踪做这些事情. PHP有一个名为
debug_backtrace 的函数
include "bar.php"; call_it(); //bar.php function call_it() { $bt = debug_backtrace(); echo "Calling file: ". $bt[0]['file'] . ' line '. $bt[0]['line']; } 希望它有帮助 同样的原则,你可以发现 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |