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


Posted in PHP onJanuary 17, 2017

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 相关文章推荐
删除无限级目录与文件代码共享
Jul 12 PHP
PHP 多维数组的排序问题 根据二维数组中某个项排序
Nov 09 PHP
PHP函数篇之掌握ord()与chr()函数应用
Dec 05 PHP
解析PHP中的正则表达式以及模式匹配
Jun 19 PHP
怎么在Windows系统中搭建php环境
Aug 31 PHP
destoon实现商铺管理主页设置增加新菜单的方法
Jun 26 PHP
PHP分页类集锦
Nov 18 PHP
PHP环境搭建的详细步骤
Jun 30 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
PHP XML Expat解析器知识点总结
Feb 15 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
Feb 12 PHP
php中preg_replace正则替换用法分析【一次替换多个值】
Jan 17 #PHP
yii使用bootstrap分页样式的实例
Jan 17 #PHP
关于Laravel Route重定向的一个注意点
Jan 16 #PHP
php文件管理基本功能简单操作
Jan 16 #PHP
Python中使用django form表单验证的方法
Jan 16 #PHP
phpinfo()中Loaded Configuration File(none)的解决方法
Jan 16 #PHP
php实现文件上传及头像预览功能
Jan 15 #PHP
You might like
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
php+mysqli事务控制实现银行转账实例
2015/01/29 PHP
Extjs学习笔记之一 初识Extjs之MessageBox
2010/01/07 Javascript
JQuery 文本框使用小结
2010/05/22 Javascript
javascript操纵OGNL标签示例代码
2014/06/16 Javascript
JavaScript数组迭代器实例分析
2015/06/09 Javascript
详解JavaScript UTC时间转换方法
2016/01/07 Javascript
使用Promise解决多层异步调用的简单学习心得
2016/05/17 Javascript
详解使用Vue.Js结合Jquery Ajax加载数据的两种方式
2017/01/10 Javascript
详解基于angular-cli配置代理解决跨域请求问题
2017/07/05 Javascript
js生成word中图片处理方法
2018/01/06 Javascript
手把手教你如何使用nodejs编写cli命令行
2018/11/05 NodeJs
vue-router路由模式详解(小结)
2019/08/26 Javascript
JavaScript的变量声明与声明提前用法实例分析
2019/11/26 Javascript
在Python中处理XML的教程
2015/04/29 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
python requests 测试代理ip是否生效
2018/07/25 Python
Django管理员账号和密码忘记的完美解决方法
2018/12/06 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
使用Python脚本zabbix自定义key监控oracle连接状态
2019/08/28 Python
Python collections中的双向队列deque简单介绍详解
2019/11/04 Python
python如何实时获取tcpdump输出
2020/09/16 Python
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
美国畅销的跑步机品牌:ProForm
2017/02/06 全球购物
香港最大的洋酒零售连锁店:屈臣氏酒窖(Watson’s Wine)
2018/12/10 全球购物
公司年会晚宴演讲稿
2014/01/06 职场文书
主题婚礼策划方案
2014/02/10 职场文书
机关单位人员学雷锋心得体会
2014/03/10 职场文书
关于爱国的演讲稿
2014/05/07 职场文书
2014统计局民主生活会对照检查材料思想汇报
2014/10/02 职场文书
离婚被告代理词
2015/05/23 职场文书
情况说明书怎么写
2015/10/08 职场文书
2016年植树节红领巾广播稿
2015/12/17 职场文书
CSS3 制作的图片滚动效果
2021/04/14 HTML / CSS
redis中lua脚本使用教程
2021/11/01 Redis
分享python函数常见关键字
2022/04/26 Python