Home  >  Article  >  Backend Development  >  php开发和调试环境的配置+出现 57% waiting for xdebug session的问题

php开发和调试环境的配置+出现 57% waiting for xdebug session的问题

WBOY
WBOYOriginal
2016-06-23 14:37:33976browse

php的开发环境相对来说比较好配置,但是php的调试环境较为难配,主要是php5.3以后引入了更为安全的机制,使得原先的Zend Debug的兼容性不那么好了,故而使用XDebug来调试。按照网上的教程都搞了,结果问题还是没有解决,折腾了一天,换了机器,也换了好几个集成开发环境,问题都没有解决,在用xdebug调试php时,出现 57% waiting for xdebug session的问题,百度、谷歌、360了好多,网上不是说是默认端口占用9000问题,就是说浏览器的设置问题,还有就是调试的目录不是文件实际的目录,这三个问题都没有解决自己所遇到的问题。

网上还有说当用phpinfo()出现以下XDebug的两个界面信息后就算成功了,其实不然,因为每次这个界面都会出现,这两个界面截图如下:

                                         截图一

                                        截图二

 

的奇了怪了,自己一步一步的按照他们教程来,还是出错问题不能解决。最后,自己静下心来,总算吧问题解决了。

现在把整个过程做如下总结。

一、集成开发环境选择。选择Eclipse PDT 3.0.x All In Ones,可以在eclipse官方搜pdt,链接到zend主页来下载。

之前用过EPP 3.0(php100以PDT和eclipse为基础搞得一个开发环境,EPP 1.22的版本可以对PHP进行预执行,且高亮php函数代码,而3.0不可以预执行也不可以高亮显示,编写代码起来很不方便。使用Zend Studio的时候也是不能高亮显示,可能是我没有设置好吧,反正是不行。)

二、运行环境选择。php+mysql+apache+XDebug

(Xampp 1.8.1集成环境包含了这几个软件,对应的版本为

Apache 2.4.3 MySQL 5.5.27 PHP 5.4.7 phpMyAdmin 3.5.2.2 FileZilla FTP Server 0.9.41 Tomcat 7.0.30 (with mod_proxy_ajp as connector) Strawberry Perl 5.16.1.1 Portable XAMPP Control Panel 3.1.0 (from hackattack142)

通过XAMPP的控制面板比较好操作当然也可以选择用Wampp集成环境,二者大同小异)

当然如果自己想研究,自己可以下载php、mysql、apache和XDebug来完成安装。从Xampp 1.68的版本之后自带了XDebug,只需要开启即可。

三、配置php.ini,开启XDebug。

[XDebug]zend_extension = "D:\xampp\php\ext\php_xdebug.dll"xdebug.profiler_append = 1xdebug.profiler_enable = 1xdebug.profiler_enable_trigger = 1xdebug.profiler_output_dir = "D:\xampp\tmp"xdebug.profiler_output_name = "cachegrind.out.%t-%s"xdebug.remote_enable = 1xdebug.remote_handler = "dbgp"xdebug.remote_host = "127.0.0.1"xdebug.trace_output_dir = "D:\xampp\tmp"

注意上述各项按照要求书写,都要开启,把是0的地方都要改成1,而不是仅仅去掉“;”即可,个人出错的主要原因就是在这里。
四、Eclipse的配置。

依次打开Windows -> Preferences -> PHP ->PHP Executables 加入XDebug

依次打开Windows -> Preferences -> PHP ->Debug,配置如下

然后在debug configuration 里面配置如下:


下面调试成功后的界面如下所示:

大功告成!

 

 

 

 

 

 

 

 

 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn