XDebug的配置和使用
简介
XDebug是一个开放源代码的PHP程序调试器(即一个Debug工具) 可以用来跟踪,调试和分析PHP程序的运行状况 功能强大的神器,对审计有非常大的帮助。 官网:http://www.xdebug.com/download.php
XDebug配置
日志
xdebug.trace_output_dir:日志追踪输出目录
xdebug.trace_output_name:日志文件名,xdebug提供了一系列的标识符,生成相应格式的文件名。
xdebug.trace_output_name:记录添加到文件中方式:1=追加(如果存在该文件);0(default)=覆盖(如果存在该文件)
显示数据
xdebug.collect_params
非零值=控制function的参数显示选项
0 = 不显示
1 = 参数类型,值(例如:array(9))
2 = 同上1,只是在CLI模式下略微有区别
3 = 所有变量内容
4 = 所有变量内容和变量名
xdebug.collect_return
1 = 显示function返回值。Default 0 不显示。
1 = 显示当前作用域使用了哪些变量,显示变量名,该选项不会记录变量的值。
1 = 添加一行显示变量赋值(若为1,刑如$a=1;这类Assignment Expression会在trace文件里显示)
格式
xdebug.trace_format:日志追踪输出目录
0 = 人可读,从左至右每列分别表示:时间点、内存、内存差(需要设置xdebug.show_mem_delta=1),等级,函数名,函数参数
1 = 机器可读[1],需要借助第三方app,例如:xdebug trace file parser 或者 xdebug trace viewer
2 = html格式,即table,用brower打开,显示table
行为
追踪方式有2种,一种是自动追踪,所有php脚本运行时,都会产生trace文件;另一种是触发方式追踪。
xdebug.auto_trace
1 = 打开自动追踪
xdebug.trace_enable_trigger 注:该特性只能在2.2+版本能设置
1 = 使用xdebug_trace GET/POST触发追踪,或者设置Cookie xdebug_trace为了避免每次请求时,都会生成相应trace追踪文件,你需要把auto_trace设置为0。
配置php.ini
找到php.ini所在的目录,在该文件的最后添加以下文本(如果已存在,要把前面的分号;去掉)
[XDebug]
zend_extension="C:\phpstudy_pro\Extensions\php\php5.4.45nts\ext\php_xdebug.dll"//Xdebug存放路径
xdebug.auto_trace = 1
xdebug.auto_output_dir = "C:/phpstudy_pro/Extensions/tmp/xdebug"
xdebug.trace_format = 0
xdebug.trace_options = 0
xdebug.collect_params = 4
xdebug.collect_return = 1
xdebug.collect_vars = 1
xdebug.collect_assignments = 1
xdebug.profiler_append = 0
xdebug.profiler_enable = 1//性能优化,关闭(不关闭,会以约每分钟几百M的速度产生大量日志文件,用不上一天你的硬盘就哭了)
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "C:/phpstudy_pro/Extensions/tmp/xdebug"
xdebug.profiler_output_name = "cache.out.%t-%s"
xdebug.remote_enable=1//是否允许远程终端,这个必须开启
xdebug.remote_handler= "dbgp"
xdebug.remote_host="127.0.0.1"
保存,重启服务器 查看Xdebug是否开启成功,打印一下phpinfo即可,浏览器访问在phpinfo中查看xdebug配置。
XDebug的配置和使用的更多相关文章
- Zend Studio XDebug调试配置
最近在配置zend studio时找了些资料,发现了这个,说的比较详细 搭建Zend Studio 10.5 和XDebug 环境,试图进行 Drupal的调试, 经历了一些困难,但是最终解决了问题, ...
- PHP调试工具Xdebug安装配置教程
说道PHP代码调试,对于有经验的PHPer,通过echo.print_r.var_dump函数,或PHP开发工具zend studio.editplus可解决大部分问题,但是对于PHP入门学习的童鞋来 ...
- IDEA+PHP+XDebug调试配置
XDebug调试配置 临时需要调试服务器上的PHP web程序,因此安装xdebug,下面简单记录 安装xdebug 下载最新并解压 wget https://xdebug.org/files/xde ...
- Mac+Docker环境下xdebug的配置
由于容器化的需要,前几天我本地也换成了docker环境.就研究了一下docker环境下phpstorm和xdebug的配置. http://www.mmfei.com/?p=453 这个博客给出了一个 ...
- PHP 调试工具Xdebug安装配置
## PHP 调试工具Xdebug安装配置 一.Xdebug 介绍 Xdebug是一个开源的PHP程序调试工具,可以使用它来调试.跟踪及分析程序运行状态.当然,Xdebug需要结合PHP的编辑工具来打 ...
- 本地环境 XAMPP+phpStorm+XDebug+chrome配置和断点调试 注册方法
我的安装环境:XAMPP版本号V3.1.0 ;phpStorm版本8.0.3;windowsxp 32bit.您老人家先过目一下,不然怕影响意义. XAMPP.phpStorm 都直接安装在了D盘根目 ...
- PHP性能调优---PHP调试工具Xdebug安装配置教程
说到PHP代码调试,对于有经验的PHPer,通过echo.print_r.var_dump函数,或PHP开发工具zend studio.editplus可解决大部分问题,但是对于PHP入门学习的童鞋来 ...
- php xdebug的配置、调试、跟踪、调优、分析
xdebug 的 profiler 是一个强大的工具,它能分析 PHP 代码,探测瓶颈,或者通常意义上来说查看哪部分代码运行缓慢以及可以使用速度提升.Xdebug 2 分析器输出一种兼容 cacheg ...
- XDebug安装配置教程
笔者的开发环境如下:Windows8.1+Apache+PhpStorm+XDebug+Firefox(XDebug helper 1.4.3插件). 转载http://www.jb51.net/ar ...
- Xdebug+ZendStudio配置
原文链接:http://www.orlion.ga/689/ 好久之前就知道有这么个东西,但是一直没用,一直用exit().var_dump() debug,效率很低. 首先下载xdebug的dll文 ...
随机推荐
- 微信h5页面调用第三方位置导航
微信h5页面拉起第三方导航应用 需要准备的: 通过微信认证的公众号有备案过的域名 背景:微信公众号点击菜单栏跳到h5页面,需要用到导航功能 需求:当用户点击导航按钮时,跳转到第三方app进行导航 参考 ...
- Java基础--Java基本数据类型
一.基本数据类型(primitive type) (1)数值型 1.数值型包括整数类型(byte,short,int,long) a.byte :1字节=8bit位 (-128~127) 包装类: ...
- SSM动态切换数据源
有需求就要想办法解决,最近参与的项目其涉及的三个数据表分别在三台不同的服务器上,这就有点突兀了,第一次遇到这种情况,可这难不倒笔者,资料一查,代码一打,回头看看源码,万事大吉 1. 预备知识 这里默认 ...
- 设计模式-15命令模式(Command Pattern)
1.模式动机 在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使 ...
- Flask 使用pycharm 创建项目,一个简单的web 搭建
1:新建项目后 2:Flask web 项目重要的就是app 所有每个都需要app app=Flask(__name__) 3:Flask 的路径是有app.route('path')装饰决定, ...
- React-redux: React.js 和 Redux 架构的结合
通过Redux 架构理解我们了解到 Redux 架构的 store.action.reducers 这些基本概念和工作流程.我们也知道了 Redux 这种架构模式可以和其他的前端库组合使用,而 Rea ...
- 微信小程序用setData修改数组或对象中的一个属性值,超好用,最简单的实现方法,不容错过!大神们 都 在 看 的方法!!!
在page中 data: { info: [{ name: "yuki", tou: "../img/head.jpg", zGong: 130, gMoney ...
- R调用C++示例
sourceCpp {Rcpp}:Source C++ Code from a File or String sourceCpp(file = "", code = NULL, e ...
- Core + Vue 后台管理基础框架4——前端授权
1.前言 上篇,我们讲了后端的授权.与后端不同,前端主要是通过功能入口如菜单.按钮的显隐来控制授权的.具体来讲,就是根据指定用户的制定权限来加载对应侧边栏菜单和页面内的功能按钮.我们一个个来讲. 2. ...
- [BUG]document.body.scrollTop=0不生效(回到顶部)
描述 让body回滚到最顶部,设置 document.body.scrollTop = 0; . 微信内,安卓设备可以,ios设备不可以. 原因 MDN中 scrollTop是这样定义的 一个元素 ...