php教程

超轻量级php框架startmvc

php如何实现不借助IDE快速定位行数或者方法定义的文件和位置

更新时间:2020-03-17 16:10 作者:startmvc
php如何实现不借助IDE快速定位行数或者方法定义的文件和位置借助了ReflectionMethod的一些特

php 如何实现不借助IDE快速定位行数或者方法定义的文件和位置

借助了ReflectionMethod的一些特性,可以快速获得函数或者方法是在哪个文件的什么位置定义的,对于调试没有文档的程序来说很有帮助!


function function_dump($funcname) {
 try {

 if(is_array($funcname)) {
 $func = new ReflectionMethod($funcname[0], $funcname[1]);
 $funcname = $funcname[1];
 } else {
 $func = new ReflectionFunction($funcname);
 }
 
 } catch (ReflectionException $e) {
 echo $e->getMessage();
 return;
 }

 $start = $func->getStartLine() - 1;

 $end = $func->getEndLine() - 1;

 $filename = $func->getFileName();

 echo "function $funcname defined by $filename($start - $end)\n";
}

使用:


function_dump('get_affiliate');

输出:


function get_affiliate defined by D:\WWW\admin\affiliate.php(232 - 238)

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!