PHPStorm + Xdebug 调试PHP代码 有大用
PHPStorm + Xdebug 调试PHP代码
之前一直通过echo,var_dump,print_r等将变量输出来调试PHP,效率奇低。而使用Xdebug,就可以直接在IDE中调试PHP了。
安装和配置XDEBUG
如果不熟悉Xdebug安装与配置的,可以参考《Windows下 Xdebug PHP 性能调试工具配置与使用方法》,按照文章中安装和配置完Xdebug后,再修改
php.ini ,再添加下面关联PHPStorm内容:
[Xdebug]
zend_extension="/usr/local/webserver/php/lib/php/extensions/xdebug.so"
xdebug.remote_enable=on
; 此地址为IDE所在IP,本机为 127.0.0.1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
; 可以是任意Key,这里设定为PHPSTORM
xdebug.idekey="PHPSTORM"
配置 PHPStorm IDE
这里用的IDE是PHPStorm,所以以下配置均根据PHPStorm进行,其他如Netbean和Eclipce类似。在PHPStorm中进入配置:

PHPStorm + Xdebug 调试PHP代码
配置浏览器
Firefox浏览器可以安装 easy Xdebug ,Chrome上安装 Xdebug
helper 。安装好后,在IDE Key 上填上 PHPSTORM (需要和配置一样)即可。

Firefox 下的 easy Xdebug 配置

Chrome 下的 Xdebug helper 配置
开始DEBUG
设置完成后,在PHPStorm里添加相应的断点,然后用刚配置好的浏览器访问相应页面,首次打开PHPStorm会提示是否接收来自PHP所在服务器的连接。如下图,Debugger窗口已经出现了调试信息:

PHPStorm Xdebug 显示
作者观点与本站无关,转载需保留E维科技及本文链接,并获得V-Get!授权。未经授权,严禁转载!
来自 http://e.v-get.com/tech/20131120/1655481151.html
来自 http://solf.me/debug-php-with-xdebug-in-phpstorm/
来自 http://solf.me/debug-php-with-xdebug-in-phpstorm/
来自 http://jikewu.com/2013/08/15/phpstorm%E8%B0%83%E8%AF%95-php-web-%E5%BA%94%E7%94%A8/
来自 http://blog.csdn.net/edisonkun/article/details/7888569
phpstorm + xdebug 远程断点调试,详解。
XDEBUG配置:
1.安装 xdebug 略了。网上有很多资料。
重点写php.ini的配置
[XDebug]
zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.default_enable = On
xdebug.collect_params = On
xdebug.remote_connect_back = On //如果开启此,将忽略下面的 xdebug.remote_host 的参数。 <一台webserver有多个开发者的工作目录的时候使用,如:p1.xx.com,p2.xx.com,p3.xx.com 。。。等。 >
xdebug.remote_host = 192.168.59.104 //注意这里是,客户端的ip<即IDE的机器的ip,不是你的web server>
xdebug.remote_port = 9900 // 注意这里是,客户端的端口<即IDE的机器的ip,不是你的web server>
xdebug.remote_enable = On
xdebug.remote_handler = dbgp
xdebug.remote_log = "/var/www/xdebug/xdebug.log"
xdebug.remote_req = req
xdebug.auto_trace = Off
xdebug.remote_autostart = On
xdebug.show_exception_trace = 0
xdebug.collect_vars = On
xdebug.collect_return = On
xdebug.collect_params = On
xdebug.var_display_max_depth = 15
xdebug.show_local_vars = 1
xdebug.dump_undefined = 1
xdebug.profiler_enable = 1
xdebug.profiler_output_dir = /var/www/xdebug
PHPSTORM 配置:
1.file->setings->php|Debug右侧。xdebug的那一块。 设置Debug port:9900(这里设置 的是,xdebug 吐出的debug信息,通过本机的什么端口传输。)
2.file->setings->php|Servers 右侧。 host: 你的web服务器的域名或ip ,端口, 下面的 use path mapping 意的是,你的项目的目录,对应服务器上的,什么目录? 这里一定要设置哦! 不然,会发生找不到文件而出错,导至调试终止。
3.Run->Edit Configurations-> 增加一个 PHP WEB APPlication 的调试点。 右侧: server 选择你上面建立的server. starturl 设置你的入口文件。
至此,配置完毕!
这样的请求,可以注册一个调试客户端哦!
http://www.aihuxi.com/****.php?XDEBUG_SESSION_START=19192
点击,小虫子图标,即可,开始调试!
来自 http://blog.csdn.net/edisonkun/article/details/7888569
XAMPP环境下用phpStorm+XDebug进行断点调试的配置
折腾了整整一个下午,总算完成了phpStorm+XDebug的断点调试设置。下面情况针对本机进行调试,远程调试差距不大。
具体过程:
- 服务器端(本地调试的情况下就是在本机)安装好XAMPP,停止apache服务(注意,如果直接退出XAMPP,是不会停止apache的)
- 在安装目录下找到php.ini,类似于D:\xampp\php\php.ini,并打开
- 找到被注释掉的项目并按如下设置:
其中remote_host 是指调试客户端的地址,即IDE所在的IP,同理remote_port 是客户端的端口,这两项在远程调试的情况下注意修改
- zend_extension = "D:\xampp\php\ext\php_xdebug.dll"(根据实际情况确定)
- xdebug.remote_enable =1
- xdebug.remote_handler = "dbgp"
- xdebug.remote_host = "localhost"
- xdebug.remote_mode = "req"
- xdebug.remote_port = 9000
- 保存文件,打开apache,这时候在CMD里输入 D:\xampp\php\php.exe -m 看到XDebug,说明开启成功。至此,服务器端配置完毕
- 下面是客户端调试,打开phpStorm,进入File>Settings>PHP>Servers,这里要填写服务器端的相关信息,name填localhost,host填localhost,port填80,debugger选XDebug
- 进入File>Settings>PHP>Debug,看到XDebug选项卡,port填9000,其他默认
- 进入File>Settings>PHP>Debug>DBGp Proxy,IDE key 填 phpStorm,host
填localhost,port 填80 - 点OK退出设置。
- 打开浏览器,如果是用chrome或者Firefox可以找到对应的XDebug工具,工具的设置里的IDE
KEY填上phpStorm,把localhost加入到白名单,以后调试的时候把工具启用就好了。如果是用其他浏览器,可以访问http://www.jetbrains.com/phpstorm/marklets/,在右边填上phpStorm,点generate,把下面的链接添加到收藏夹,方便调用。 - 在phpStorm里打开监听,就是一个电话一样的按钮。
- 在浏览器里打开XDebug工具,访问localhost,与phpStorm连接成功!
来自 http://www.chenxuanyi.cn/xampp-phpstorm-xdebug.html
XAMPP环境下用phpStorm+XDebug进行断点调试的配置
折腾了整整一个下午,总算完成了phpStorm+XDebug的断点调试设置。下面情况针对本机进行调试,远程调试差距不大。
具体过程:
- 服务器端(本地调试的情况下就是在本机)安装好XAMPP,停止apache服务(注意,如果直接退出XAMPP,是不会停止apache的)
- 在安装目录下找到php.ini,类似于D:\xampp\php\php.ini,并打开
- 找到被注释掉的项目并按如下设置:
其中remote_host 是指调试客户端的地址,即IDE所在的IP,同理remote_port 是客户端的端口,这两项在远程调试的情况下注意修改
- zend_extension = "D:\xampp\php\ext\php_xdebug.dll"(根据实际情况确定)
- xdebug.remote_enable =1
- xdebug.remote_handler = "dbgp"
- xdebug.remote_host = "localhost"
- xdebug.remote_mode = "req"
- xdebug.remote_port = 9000
- 保存文件,打开apache,这时候在CMD里输入 D:\xampp\php\php.exe -m 看到XDebug,说明开启成功。至此,服务器端配置完毕
- 下面是客户端调试,打开phpStorm,进入File>Settings>PHP>Servers,这里要填写服务器端的相关信息,name填localhost,host填localhost,port填80,debugger选XDebug
- 进入File>Settings>PHP>Debug,看到XDebug选项卡,port填9000,其他默认
- 进入File>Settings>PHP>Debug>DBGp Proxy,IDE key 填 phpStorm,host
填localhost,port 填80 - 点OK退出设置。
- 打开浏览器,如果是用chrome或者Firefox可以找到对应的XDebug工具,工具的设置里的IDE
KEY填上phpStorm,把localhost加入到白名单,以后调试的时候把工具启用就好了。如果是用其他浏览器,可以访问http://www.jetbrains.com/phpstorm/marklets/,在右边填上phpStorm,点generate,把下面的链接添加到收藏夹,方便调用。 - 在phpStorm里打开监听,就是一个电话一样的按钮。
- 在浏览器里打开XDebug工具,访问localhost,与phpStorm连接成功!
来自 http://www.chenxuanyi.cn/xampp-phpstorm-xdebug.html
PHPStorm + Xdebug 调试PHP代码 有大用的更多相关文章
- macOS 下 PHPStorm + Xdebug 调试 Docker 环境中的代码
0x00 描述 宿主机是 mac mini,构建的项目在 docker 中,所以需要在 PHPStorm 上配置 Xdebug 进行远程代码调试. 0x01 环境 宿主机:macOS High Sie ...
- phpstrom+xdebug调试PHP代码
众所周知开发PHP的IDE种类繁多,然而开发PHP并不能像开发其他语言一样,调试PHP代码对诸多新手来说,搭建调试环境就比较麻烦!其实哈,我发现NuSphere-phped-16.0很强大,集成了很强 ...
- phpstorm+xdebug调试详细教程
对于PHP开发,初来咋到,开发环境的搭建和理解感觉是最烦人的一件事了.不像JAVA,打开一个Eclipse就可以开搞,Php的Debug都要几个插件来配合工作.这些都是死的,好说.但是对于Xdebug ...
- PhpStorm+xdebug调试——更新
之前写过一篇<PhpStorm+xdebug+postman调试>,但是经过后来一段时间的使用,发现有些累赘.这里介绍一种比较简单方便的操作. 在上一篇文章中有一段“ 7.设置Server ...
- PHPStorm+XDEBUG 调试Laravel
首先输出phpinfo(); https://xdebug.org/wizard.php 打开然后查看适合你的调试扩展版本 ,目前支持到php7.2 整个页面ctrl+a 复制进去 然后下载 扩展文 ...
- zend studio 添加xdebug调试php代码
1.Eclipse下对于大部分语言都提供了调试器接口,自然的对于PHP,Zend已经集成了XDebug调试器,找到Zend中的Preferences->PHP->Debug, 将调试器设置 ...
- phpstorm+xdebug调试代码
1工具 #phpstorm 前面有文章介绍如何安装 #phpStudy 官网下的2018最新的安装包,php环境使用的也是最新的php7.0nts 2开启php Xdebug拓展 开启拓展,phpSt ...
- phpStorm+xdebug调试(php7.3)
一.首先安装xdebug 安装xdebug比 ,运行php -i >phpinfo.txt 或者 echo phpinfo();将全部信息贴到https://xdebug.org/wizard. ...
- phpstorm xdebug调试设置样式
由于本人比较喜欢白底的phpstorm开发环境,所以XDEBUG断点调试,F8时默认是没有背景色的,phpstorm中的设置方式如下 files -> settings -> Editor ...
随机推荐
- C++ 命名管道示例
想做一个 Hook CreateFile 重定向到内存的功能,貌似可以假借命名管道实现这个功能.不熟悉命名管道,做了几个demo,如下: Server: // NamedPipeServer.cpp ...
- 剑指offer--day08
1.1 题目:二叉树镜像:操作给定的二叉树,将其变换为源二叉树的镜像. 1.2 思路:先交换根节点的两个子结点之后,我们注意到值为10.6的结点的子结点仍然保持不变,因此我们还需要交换这两个结点的左右 ...
- JS 数组的常用方法归纳之不改变原数组和其他
不改变原数组的方法 concat() 连接两个或多个数组,不改变现有数组,返回新数组,添加的是数组中的元素 join(",") 把数组中的所有元素放入一个字符串,通过‘,’分隔符进 ...
- checkbox radio 多次操作失效
checkbox radio 多次操作失效 , 将attr替换为prop $(this).attr('checked',true); $(this).attr('checked',false); $( ...
- mysql自动补全功能(只能用于表/列 名)
关键字:mysql自动补全,auto-rehash 注:只能补齐表,列名,使用tab进行补全操作 一.修改my.cnf vi /etc/my.cnf [mysql] auto-rehash #添加au ...
- mysql 小数位
1 select convert(t/100,decimal(15,2)) as a from user (1) convert() 一.在mysql操作中我们经常需要对数据进行类型转换.此时我 ...
- 并发问题java
两个重要的概念:同步和异步 同步,按照流程顺序一步一步的执行,等待获取单步的返回结果并执行下一步:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式. 同步在一定程度上可以看做是单线程, ...
- 入门级,关于下载设置wamp的安装
将wamp下载下来,分清楚自己电脑是32还是64位,在安装之前,首先确定你电脑里安装了vc++ 的运行库,不然安装wamp后会出现提醒缺少XXX文件,但是注意,在安装vc运行库的时候,请搜索集合包类的 ...
- H-Updating a Dictionary (模拟)
In this problem, a dictionary is collection of key-value pairs, where keys are lower-case letters, a ...
- python基础面试题:(1)
1.以下用C语言开发的Python解释器是( ) A:python是Java语言开发的Python解析器,B:PyPy是使用Python语言开发的Python解析,C:IronPython是.net平 ...