php 如何实现不借助IDE快速定位行数或者方法定义的文件和位置
借助了ReflectionMethod的一些特性,可以快速获得函数或者方法是在哪个文件的什么位置定义的,对于调试没有文档的程序来说很有帮助!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
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" ;
}
|
使用:
1
|
function_dump( 'get_affiliate' );
|
输出:
1
|
function get_affiliate defined by D:\WWW\admin\affiliate.php(232 - 238)
|
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!