请选择 进入手机版 | 继续访问电脑版
绿茶科技社区
这篇文章主要介绍了PHP使用反射机制实现查找类和方法的所在位置,实例分析了PHP反射机制的原理与使用反射机制实现对类和方法的查找技巧,需要的朋友可以参考下
本文实例讲述了PHP使用反射机制实现查找类和方法的所在位置。分享给大家供大家参考,具体如下:
  1. //参数1是类名,参数2是方法名
  2. $func = new ReflectionMethod('UnifiedOrder_pub', 'getPrepayId');
  3. //从第几行开始
  4. $start = $func->getStartLine() - 1;
  5. //从第几行结束
  6. $end = $func->getEndLine() - 1;
  7. //获取路径地址
  8. $filename = $func->getFileName();
复制代码
下面是摘抄的示例代码比较全面
  1. <?php
  2. function a() {
  3. }
  4. class b {
  5.   public function f() {
  6.   }
  7. }
  8. function function_dump($funcname) {
  9.   try {
  10.     if(is_array($funcname)) {
  11.       $func = new ReflectionMethod($funcname[0], $funcname[1]);
  12.       $funcname = $funcname[1];
  13.     } else {
  14.       //这个应该是当只有一个参数的时候就看做是本类的发放吧,大概,自行百度
  15.       $func = new ReflectionFunction($funcname);
  16.     }
  17.   } catch (ReflectionException $e) {
  18.     echo $e->getMessage();
  19.     return;
  20.   }
  21.   $start = $func->getStartLine() - 1;
  22.   $end = $func->getEndLine() - 1;
  23.   $filename = $func->getFileName();
  24.   echo "function $funcname defined by $filename($start - $end)\n";
  25. }
  26. function_dump('a');
  27. function_dump(array('b', 'f'));
  28. $b = new b();
  29. function_dump(array($b, 'f'));
  30. ?>
复制代码
希望本文所述对大家PHP程序设计有所帮助。



分享到 :
0 人收藏

3 个回复

倒序浏览
邀月  高级会员 | 2019-2-15 11:19:58
广告位,,坐下看看
Dragon龙  高级会员 | 2019-3-3 12:22:04
楼主呀,,,您太有才了。。。
阿新  高级会员 | 2019-3-17 10:50:17
传说中的沙发???哇卡卡
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

举报|Archiver|手机版|小黑屋|Lvchakeji Inc.  

Powered by Discuz! X3.3 © 2001-2016 Comsenz Inc.

返回顶部