解析phpstorm + xdebug 远程断点调试
PHPStorm与Xdebug远程断点调试的详尽指南
对于想要掌握PHPStorm与Xdebug远程断点调试的朋友们,本文将对这一过程进行详细的介绍。掌握了这种调试技术,将极大提高你的开发效率和代码质量。
一、XDEBUG的配置
我们需要安装Xdebug。这个过程在网上有许多详尽的资料,这里不再赘述。接下来,我们重点介绍在phpi文件中的XDebug配置。
1. 在phpi文件中找到或添加[XDebug]段,然后进行如下配置:
```makefile
zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.default_enable = On
xdebug.collect_params = On
xdebug.remote_connect_back = On
```
其中,xdebug.remote_connect_back在多个开发者的工作环境中特别有用,如一个webserver下多个开发者的工作目录。如果开启此选项,将忽略xdebug.remote_host的参数。
接着设置:
```makefile
xdebug.remote_host = 192.168.59.104 这里是客户端的IP,即IDE的机器的IP,不是你的web server的IP。
xdebug.remote_port = 9900 同上,这是客户端的端口。
xdebug.remote_enable = On
xdebug.remote_handler = dbgp
xdebug.remote_log = "/var//xdebug/xdebug.log"
xdebug.auto_trace = Off
xdebug.remote_autostart = On 开启自动启动调试会话。
xdebug.show_exception_trace = 0 显示异常跟踪信息。
xdebug.collect_vars = On 收集变量信息。
xdebug.collect_return = On 收集函数返回值信息。
xdebug.var_display_max_depth = 15 设置变量显示的最大。
xdebug.show_local_vars = 1 显示本地变量信息。
xdebug.dump_undefined = 1 跟踪未定义的变量信息。
xdebug.profiler_enable = 1 开启性能分析器。输出的目录设置如上所示。请注意将以上配置修改为你自己的实际需求。例如端口号等设置需要根据你的实际情况进行调整。关于如何找到或修改phpi文件的位置,你可以参考网上相关的资料或者在你的服务器上进行搜索。修改完成后重启你的服务器以使配置生效。然后你就可以在PHPStorm中进行配置了。二、PHPStorm的配置打开PHPStorm并进入配置界面。找到File -> Settings -> php|Debug右侧选项进行设置:Debug port设置为9900(这里设置的是xdebug吐出的debug信息通过本机的什么端口传输)。接下来是File -> Settings -> php|Servers右侧选项的设置:Host是你的web服务器的域名或IP地址和端口号;Path mapping是你的项目目录对应服务器上的什么目录,这是一个重要的设置,如果不设置可能会找不到文件而出错导致调试终止。最后一步是Run -> Edit Configurations -> 增加一个PHP WEB Application的调试点,然后在右侧选择你上面建立的server并设置starturl为你的入口文件。至此配置完毕!你可以通过访问一个特定的URL来启动调试会话,例如: id点击小虫子图标即可开始调试!以上就是关于PHPStorm与Xdebug远程断点调试的详细配置指南,希望对你有所帮助!如果你有任何问题或者需要进一步的帮助,请随时向我提问或者参考网上的相关资料。
编程语言
- 解析phpstorm + xdebug 远程断点调试
- JS及JQuery对Html内容编码,Html转义
- 解决phpcms更换javascript的幻灯片代码调用图片问题
- ASP编程入门进阶(十一):Chat聊天程序
- JavaScript中数组成员的添加、删除介绍
- Mac下使用mitmproxy抓包HTTPS数据方法详解
- JavaScript中的函数(二)
- 一个简单不报错的summernote 图片上传案例
- MySql 5.6.14 winx64配置方法(免安装版)
- PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
- jquery实现点击查看更多内容控制段落文字展开折
- Git回退代码到某次commit的实现方法
- JavaScript中document.forms[0]与getElementByName区别
- JavaScript模拟push
- 用Laravel Sms实现laravel短信验证码的发送的实现
- php中怎么搜索相关联数组键值及获取之