PHP使用反射机制实现查找类和方法的所在位置 PHP使用反射机制实现查找类和方法的所在位置
西瓜霜 人气:0想了解PHP使用反射机制实现查找类和方法的所在位置的相关内容吗,西瓜霜在本文为您仔细讲解PHP使用反射机制实现查找类和方法的所在位置的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:PHP,反射机制,查找类,查找方法,所在位置,下面大家一起来学习吧。
本文实例讲述了PHP使用反射机制实现查找类和方法的所在位置。分享给大家供大家参考,具体如下:
//参数1是类名,参数2是方法名 $func = new ReflectionMethod('UnifiedOrder_pub', 'getPrepayId'); //从第几行开始 $start = $func->getStartLine() - 1; //从第几行结束 $end = $func->getEndLine() - 1; //获取路径地址 $filename = $func->getFileName();
下面是摘抄的示例代码比较全面
<?php function a() { } class b { public function f() { } } 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('a'); function_dump(array('b', 'f')); $b = new b(); function_dump(array($b, 'f')); ?>
希望本文所述对大家PHP程序设计有所帮助。
加载全部内容