Windows下XDebug 手工配置与使用说明


Posted in PHP onJuly 11, 2010

1. 下载XDebug二进制文件: http://www.xdebug.org/download.php

5.2 http://www.xdebug.org/files/php_xdebug-2.1.0-5.2-vc6.dll

5.3 http://www.xdebug.org/files/php_xdebug-2.1.0-5.3-vc6.dll
2. 找到php.ini
3. 如果配置过 ZendOptimizer, 需要先屏蔽 ZendOptimizer 有关的配置, 通常如下:

[Zend]

zend_extension_manager.optimizer_ts="path\ZendOptimizer-3.3.0\lib\Optimizer-3.3.0"

zend_extension_ts="path\ZendOptimizer-3.3.0\lib\ZendExtensionManager.dll"
4. 加入 XDebug 配置:

zend_extension_ts="path/xdebug/php_xdebug-2.1.0-5.2-vc6.dll"

[Xdebug]

xdebug.profiler_enable=on

xdebug.trace_output_dir="path\xdebug"

xdebug.profiler_output_dir="path\xdebug"

xdebug.remote_enable=on

xdebug.remote_handler=dbgp

xdebug.remote_host=localhost

xdebug.remote_port=9000

说明: 上面 "path" 的地方需要修改为你自己的本地路径.
5. 重启 Apache 或者 IIS.
6. 查看 phpinfo 的输出, 如果看到 XDebug 的选项, 就说明配置成功了.
以下是其他网友的文章
一、安装xdebug模块
1、去www.xdebug.org下载相应版本php的模块文件,保存下载后的文件到php的ext目录,可以自己修改文件的名称,如保存成:php_xdebug.dll
2、修改php.ini,增加如下信息

[Xdebug] 
zend_extension_ts="c:/webserver/php5/ext/php_xdebug.dll" 
xdebug.auto_trace=on 
xdebug.collect_params=on 
xdebug.collect_return=on 
xdebug.trace_output_dir="c:/webserver/php5/debuginfo" 
xdebug.profiler_enable=on 
xdebug.profiler_output_dir="c:/webserver/php5/debuginfo"

参数解释:
zend_extension_ts="c:/webserver/php5/ext/php_xdebug.dll"
;加载xdebug模块。这里不能用extension=php_xdebug.dll的方式加载,必须要以zend的方式加载,否则安装上后,phpinfo是显示不出xdebug这个项的。
xdebug.auto_trace=on;
;自动打开“监测函数调用过程”的功模。该功能可以在你指定的目录中将函数调用的监测信息以文件的形式输出。此配置项的默认值为off。
xdebug.collect_params=on;
;打开收集“函数参数”的功能。将函数调用的参数值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.collect_return=on
;打开收集“函数返回值”的功能。将函数的返回值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.trace_output_dir=”c:\Temp\xdebug”
;设定函数调用监测信息的输出文件的路径。
xdebug.profiler_enable=on
;打开效能监测器。
xdebug.profiler_output_dir=”c:\Temp\xdebug”;
;设定效能监测信息输出文件的路径。
还有一些更为具体的参数设定,详见:http://www.xdebug.org/docs-settings.php
3、重启apache
这样,在本地运行php的时候,会在所设定的目录里产生一些调试信息的文件:
函数调用过程监测信息文件的文件名格式:trace.××××××.xt。这个文件可以直接查看,里面包含了函数运行的时间,函数调用的参数值,返回值,所在的文件和位置等信息。内容格式还是相对直观的。
效能监测文件的文件名格式:cachegrind.out.××××××××。
这个文件也可以直接查看,不过信息格式不易被人类所理解,
所以我们需要接下来的一个软件。
二、安装wincachegrind
由于效能监测文件:cachegrind.out.××××××××文件的内容不易被人类所理解,所以我们需要一个工具来读取它。windows下就有一款这样的软件:wincachegrind。
1、到http://sourceforge.net/projects/wincachegrind/下载安装wincachegrind
2、安装运行后,点击Tools->options,设定你的working folder(php.ini里xdebug.profiler_output_dir的值)
这样就可以比较直观的查看效能监测文件的信息了。
PHP 相关文章推荐
PHP学习之PHP运算符
Oct 09 PHP
php记录代码执行时间(实现代码)
Jul 05 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
Dec 25 PHP
ThinkPHP添加更新标签的方法
Dec 05 PHP
列举PHP的Yii 2框架的开发优势
Jul 03 PHP
反射调用private方法实践(php、java)
Dec 21 PHP
php使用curl代理实现抓取数据的方法
Feb 03 PHP
Laravel向公共模板赋值方法总结
Jun 25 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
Oct 11 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
Oct 18 PHP
PHP的Trait机制原理与用法分析
Oct 18 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 PHP
PHP编码规范之注释和文件结构说明
Jul 09 #PHP
PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
Jul 09 #PHP
php set_magic_quotes_runtime() 函数过时解决方法
Jul 08 #PHP
PHP 函数学习简单小结
Jul 08 #PHP
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
Jul 04 #PHP
PHP三层结构(上) 简单三层结构
Jul 04 #PHP
Apache 配置详解(最好的APACHE配置教程)
Jul 04 #PHP
You might like
MySQL GBK→UTF-8编码转换
2007/05/24 PHP
对PHP语言认识上需要避免的10大误区
2014/06/12 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
jquery 简短右键菜单 多浏览器兼容
2010/01/01 Javascript
理解Javascript_10_对象模型
2010/10/16 Javascript
jquery实现保存已选用户
2014/07/21 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
在Node.js中使用HTTP上传文件的方法
2015/06/23 Javascript
jQuery实现图片上传和裁剪插件Croppie
2015/11/29 Javascript
node.js操作mongodb简单示例分享
2017/05/25 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
微信小程序实现顶部普通选项卡效果(非swiper)
2020/06/19 Javascript
vue生成token保存在客户端localStorage中的方法
2017/10/25 Javascript
React学习笔记之高阶组件应用
2018/06/02 Javascript
详解在React中跨组件分发状态的三种方法
2018/08/09 Javascript
微信小程序时间标签和时间范围的联动效果
2019/02/15 Javascript
vue watch关于对象内的属性监听
2019/04/22 Javascript
vue quill editor 使用富文本添加上传音频功能
2020/01/14 Javascript
[03:36]2014DOTA2 TI小组赛综述 八强诞生进军钥匙球馆
2014/07/15 DOTA
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
Python 读写文件的操作代码
2018/09/20 Python
python程序控制NAO机器人行走
2019/04/29 Python
Python 中的 global 标识对变量作用域的影响
2019/08/12 Python
pytorch加载自定义网络权重的实现
2020/01/07 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
CSS3 伪类选择器 nth-child()说明
2010/07/10 HTML / CSS
css3弹性盒模型(Flexbox)详细介绍
2014/10/08 HTML / CSS
水产养殖学应届生求职信
2013/09/29 职场文书
建筑工地大门标语
2014/06/18 职场文书
干部作风整顿个人剖析材料
2014/10/06 职场文书
2015入党自传书范文
2015/06/26 职场文书
同学聚会感言一句话
2015/07/30 职场文书
教师理论学习心得体会
2016/01/21 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书
MySQL的Query Cache图文详解
2021/07/01 MySQL
Python尝试实现蒙特卡罗模拟期权定价
2022/04/21 Python