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

yipeiwu_com6年前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 文件编程综合案例-文件上传的实现

PHP文件上传1、upload.php复制代码 代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN...

php 禁止页面缓存输出

复制代码 代码如下:<?php header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); header('Last-Modified: '...

PHP类的封装与继承详解

封装        把成员方法和成员属性封装到类中,隐藏属性和方法实现的细节,通过public、protected、priva...

PHP实现的pdo连接数据库并插入数据功能简单示例

本文实例讲述了PHP实现的pdo连接数据库并插入数据功能。分享给大家供大家参考,具体如下: 创建配置文件 pdo_config.php <?php $db_Type...

PHP工程师VIM配置分享

PHP工程师VIM配置分享

关于我的vim配置 经常在服务器上写代码,一个朋友提供了关于他的vim配置,在此分享给大家。 界面效果图: .vimrc 内容如下  "==================...