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

yipeiwu_com5年前PHP代码库

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)

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

相关文章

php 动态添加记录

复制代码 代码如下:<html> <head> <title>插入一条新数据</title> <meta http-equiv="C...

php pdo oracle中文乱码的快速解决方法

在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_I...

PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法

本文实例讲述了PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法。分享给大家供大家参考。具体分析如下: PHP 连接 MSSQL 的新手经常遇到这个问题:数据库里面的...

php中get_cfg_var()和ini_get()的用法及区别

本文实例讲述了php中get_cfg_var()和ini_get()的用法及区别。分享给大家供大家参考。具体分析如下: php里get_cfg_var()和ini_get()都是取得配置...

PHP随机生成唯一HASH值自定义函数

网上有很多种方法获取随机唯一的HASH值,但是大同小异: 1、先获取随机的唯一字符串 2、进行MD5或者sha1算HASH值 一个项目要用到hash值,就去网上找了找,却发现PHP有一个...