Ecplise + Xdebug 一波三折终于能单步调试了
http://my.oschina.net/012345678/blog/152889
寻找 会’偷懒’的开发者线下公开课,报名即享受免费体验云主机
php Version 5.2.13
apache 2.2
Xdebug 2.1.2 VC6 32bit
eclipsePHP 官网的
以上全部下载齐全,保证版本正确。
1:将下载的Xdebug文件复制到安装php文件的ext文件下
2:设置phpini文件,支持Xdebug, 在最后添加
[Xdebug]
zend_extension_ts="D:/Program Files/php-5.2.13-Win32/ext/php_xdebug-2.1.2-5.2-vc6.dll"
;开启自动跟踪
xdebug.auto_trace=1
;开启异常跟踪
xdebug.show_exception_trace=1
;开启远程调试自动启动
xdebug.remote_autostart=1
;开启远程调试
xdebug.remote_enable=1
xdebug.collect_params=On
xdebug.collect_return=On
;设定函数调用监测信息的输出文件的路径。
xdebug.trace_output_dir="d:\xdebug"
;打开效能监测器。
xdebug.profiler_enable=On
;设定效能监测信息输出文件的路径。
xdebug.profiler_output_dir="d:\xdebug"
xdebug.max_nesting_level=2000
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
3:设置Eclipse,
window - preferences 下图:
4:继续如下图:
5:网上从没有介绍的关键点来了,下几张图很重要
点击,如下:
再点击,如下:
重点来了,1处可以任意填写 2处填写时注意,要和你apache httpd.conf中,下图红色箭头处一致,
在eclipse里新建一个项目叫php:
如下图;
同时php下新建一个index.php,在浏览器访问www.test.com,就能看到index.php里的内容了(以上注意两点,第一,我们这里叫php,后面要用到,第二,项目的路径要和DocumentRoot D:/workspace/Test中一致)
现在只要不用Xdebug是没问题的,浏览器正常浏览,直接www.test.com就行。
现在Xdebug,在index.php中打个断点,鼠标右键,DebugAS -> Debug Web Page->图:
现在点击OK,会报404,根本访问不了,断点也不能用,仔细看LunchURL会发现是http://www.test.com//php/index.php,换成绝对路径就是D:/workspace/Test/php/index.php,而电脑上根本没有这个地址,index.php实际地址是D:/workspace/Test/index.php,所以我们只要把php去掉,让成为正确的url地址就可以了,或者把建项目的时候一开始就叫Test,这样变成D:/workspace/Test/Test/index.php,再把 httpd.conf改成<VirtualHost *:80>
ServerAdmin admin@t.com
DocumentRoot D:/workspace
ServerName www.test.com
<Directory "D:/workspace">
AllowOverride All
</Directory>
</VirtualHost>
重启apache,现在www.test.com 就是D:/workspace,点击右键debug时,你会发现urL变成了www.test.com/Test/index.php,换成绝对路径就是D:/workspace//Test/index.php,这个地址是存在的。
总结,之所以不能Xdebug是因为路径问题,而这些路径的在debug时,拼接有误造成的,你可以到
这个小虫子的菜单,debug configrations里看下,你会发现奥秘的:如下图:
Ecplise + Xdebug 一波三折终于能单步调试了的更多相关文章
- phpstrom 与 xdebug 配合实现PHP单步调试
不说废话,直接开始. 第一步: 安装并配置xdebug 安装 可以从官网直接下载对应php版本的xdebug,下载地址: https://xdebug.org/download.php 配置,典型的 ...
- zend+xdebug单步调试
也允许使用第三方调试工具,今天以PHP教程形式分享如何使用zend studio配置Xdebug来调试PHP程序. 使用Xdebug在zend studio中调试PHP源码之前,请务必安装配置Xdeb ...
- PhpStorm+Xdebug配置单步调试PHP
(一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...
- php安装xdebug扩展,PHPStorm+XDebug单步调试
(一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...
- PHP、TP6框架及JavaScript的单步调试
目录 一.PHP程序的调试 1. 单个PHP程序的调试 2. PHP框架代码的调试 二.JavaScript程序的调试 三.总结 参考资料:https://www.bilibili.com/video ...
- VC++6.0 Debug单步调试
相信大家对谭浩强童鞋都不陌生,想当年,是他 引领我们步入了C的殿堂,我们从他那里学会了如何写代码,他却没有教我们如何Debug,而我们伟大的老师,也对此只字不提.相信很少有人可以一次性写出 完全正确的 ...
- 一种 Visual Studio 不能单步调试(函数调用)问题
Visual Studio每次出"莫名其妙的问题"的时候都非常棘手.这次遇到这么一个问题: 新建的Windows的控制台窗口程序(C++),编译链接运行没有问题.但是想单步调试一下 ...
- phpstorm中使用xdebug配置cli模式的调试
这里略去xdebug的安装,安装很简单可以下载源码包,动态编译进去! 环境: Dev 服务器(IP:192.168.2.100),安装phpstorm,用来做开发任务! Server服务器(IP:19 ...
- 如何使用vs2012单步调试uGUI(unity3d 5.3f4)
下载uGUI源代码 uGUI源代码地址:https://bitbucket.org/Unity-Technologies/ui 下载代码工具:tortoisehg-3.6.2-x64.msi http ...
随机推荐
- C++ 中 volatile 的使用
一.作用 volatile的作用是: 作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值. 简单地说就是防止编译器对代码进行优化.比如如下程序:XBYTE[2]=0x55;XBY ...
- linux tricks 之 typeof用法.
typeof是gcc的扩展功能,比较简单,是用来取得参数类型,具体可参考gcc官网的解释. https://gcc.gnu.org/onlinedocs/gcc/Typeof.html ------- ...
- 浅析十三种常用的数据挖掘的技术&五个免费开源的数据挖掘软件
一.前 沿 数据挖掘就是从大量的.不完全的.有噪声的.模糊的.随机的数据中,提取隐含在其中的.人们事先不知道的但又是潜在有用的信息和知识的过程.数据挖掘的任务是从数据集中发现模式,可以发现的模式有很多 ...
- &是什么运算符(转)
&表示两种运算符,其中一种表示取值运算符,一种是按位与 取值运算符 int a=1; int *p=&a; //其中&a表示的就是把a中的地址取出来,然后赋给指针变量,也就是说 ...
- isnull的使用方法
is null 查看列数据为空 select*from lrb where lrid is null ISNULL使用指定的替换值替换 NULL. 语法ISNULL ( check_express ...
- JavaScript案例三:动态显示时间
用JavaScript实现在页面上动态的显示时间 <!DOCTYPE html> <html> <head> <title>JavaScript动态显示 ...
- calendar 示例
package unit5; import java.text.DateFormatSymbols; public class MyMonth { private int month; private ...
- 矩阵连乘积 ZOJ 1276 Optimal Array Multiplication Sequence
题目传送门 /* 题意:加上适当的括号,改变计算顺序使得总的计算次数最少 矩阵连乘积问题,DP解决:状态转移方程: dp[i][j] = min (dp[i][k] + dp[k+1][j] + p[ ...
- quick cocos map使用
'''lua local MainScene = class("MainScene", function() return display.newScene("MainS ...
- BZOJ1766 : [Ceoi2009]photo
如果两个矩形相交且不是包含关系,那么完全可以让它们不相交. 将坐标离散化后,设$f[i][j][k]$表示区间$[i,j]$纵坐标不小于$k$的部分的最优解. 对于$f[i][j][k]$,要么枚举分 ...