使用phpstorm和xdebug实现远程调试的方法


Posted in PHP onDecember 29, 2015

vs的断点调试功能很强大有木有,能查看所有变量有木有。php调试很麻烦有木有,echo,var_dump写得你想吐了有木有。想体验一下ide调试的快感吗?那就来使用xdebug吧。

1.原理:xdebug是一款php调试插件,支持远程调试,就是在php文件运行的时候,能通过tcp协议,来发送调试信息到远程端口,ide在收到调试信息的时候,可以向xdebug发送单步运行,中止运行,运行等命令。这样就实现了vs那样强大的调试功能。

2.需要的东东:一款支持xdebug远程调试的ide,这里使用phpstorm,是一个灰常强大的phpide。另外需要一款你的php对应版本的xdebug。

3.步骤:先下载xdebug,请在官网下载你的php版本对应的xdebug

使用phpstorm和xdebug实现远程调试的方法

如果你不知道你的版本呢,请echo phpinfo();哈哈,然后把整个页面复制到http://xdebug.org/wizard.php 这个页面的框里,然后他会自动分析你的php版本,然后告诉你放在哪个文件夹,我们放在php的拓展文件夹就好了,我是D:\xampp\php\ext

然后配置php.ini,在最后加上这个:

[xdebug]
zend_extension = D:\xampp\php\ext\php_xdebug-2.2.0-5.3-vc9.dll
xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.idekey=phpstorm4
xdebug.remote_autostart=1

解释下,第一行是加载xdebug,romote_enable是开启远程调试,下面是远程调试的参数,ip,端口,识别字符串,自动远程调试。

然后重启apache,xdebug就加载成功了,为神马网站会慢很多呢,因为你开启了自动远程调试,每一次访问都会连接一下定义的ip和端口。哈哈。这个看自己取舍吧。

使用phpstorm和xdebug实现远程调试的方法

然后就是配置ide了,

使用phpstorm和xdebug实现远程调试的方法

选择editconfig,然后按这样配置:

使用phpstorm和xdebug实现远程调试的方法

在php remote debug里面配置好服务器 127.0.0.1 80 xdebug,然后设置好识别字符串。这里是我们已经定义了的phpstorm4,然后保存。这样就配置好了。

4.使用:现在我们就可以开始调试了。

使用phpstorm和xdebug实现远程调试的方法

点击者按钮,开始监听远程调试,当变成绿色表示监听成功。下面我们设置一个断点。

使用phpstorm和xdebug实现远程调试的方法

看到木有,有木有有木有很强大,可以一步一步执行哦,F7单步进入函数,F8是单步跳过函数。有不明白的留言哦。

PHP 相关文章推荐
PHP动态变静态原理
Nov 25 PHP
PHP开发中常用的8个小技巧
Aug 27 PHP
PHP 最大运行时间 max_execution_time修改方法
Mar 08 PHP
php设计模式 Chain Of Responsibility (职责链模式)
Jun 26 PHP
header跳转和include包含问题详解
Sep 08 PHP
php使用imagick模块实现图片缩放、裁剪、压缩示例
Apr 17 PHP
php计算程序运行时间的简单例子分享
May 10 PHP
php实现给图片加灰色半透明效果的方法
Oct 20 PHP
php数组去除空值函数分享
Feb 02 PHP
php pdo oracle中文乱码的快速解决方法
May 16 PHP
PHP中快速生成随机密码的几种方式
Apr 17 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
May 27 PHP
PHP远程调试之XDEBUG
Dec 29 #PHP
从性能方面考虑PHP下载远程文件的3种方法
Dec 29 #PHP
Yii快速入门经典教程
Dec 28 #PHP
WordPress主题制作之模板文件的引入方法
Dec 28 #PHP
WordPress的主题编写中获取头部模板和底部模板
Dec 28 #PHP
YiiFramework入门知识点总结(图文教程)
Dec 28 #PHP
讲解WordPress中用于获取评论模板和搜索表单的PHP函数
Dec 28 #PHP
You might like
PHP+MySQL 手工注入语句大全 推荐
2009/10/30 PHP
PHP使用ob_start生成html页面的方法
2014/11/07 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
magento后台无法登录解决办法的两种方法
2016/12/09 PHP
PHP中TP5 上传文件的实例详解
2017/07/31 PHP
JQuery循环滚动图片代码
2011/12/08 Javascript
JavaScript中获取鼠标位置相关属性总结
2014/10/11 Javascript
用原生JS获取CLASS对象(很简单实用)
2014/10/15 Javascript
dreamweaver 8实现Jquery自动提示
2014/12/04 Javascript
avalonjs制作响应式瀑布流特效
2015/05/06 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
JS+H5 Canvas实现时钟效果
2018/07/20 Javascript
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
vue props 单项数据流实例分享
2020/02/16 Javascript
[03:09]2014DOTA2国际邀请赛 赛场上的美丽风景线 中国Coser也爱DOTA2
2014/07/20 DOTA
在Python的Django框架中使用通用视图的方法
2015/07/21 Python
Python端口扫描简单程序
2016/11/10 Python
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
python中正则表达式与模式匹配
2019/05/07 Python
用python画一只可爱的皮卡丘实例
2019/11/21 Python
详解python内置常用高阶函数(列出了5个常用的)
2020/02/21 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
Python基于gevent实现文件字符串查找器
2020/08/11 Python
使用CSS3滤镜的filter:blur属性制作毛玻璃模糊效果的方法
2016/07/08 HTML / CSS
Rosetta Stone官方网站:语言学习
2019/01/05 全球购物
应届生财务会计求职信
2013/11/05 职场文书
高中校园广播稿
2014/01/11 职场文书
创先争优活动方案
2014/02/12 职场文书
文明和谐家庭事迹材料
2014/05/18 职场文书
授权收款委托书
2014/09/23 职场文书
2014年自愿离婚协议书范本
2014/09/25 职场文书
审美与表现自我评价
2015/03/09 职场文书
2015年骨干教师工作总结
2015/05/26 职场文书
php引用传递
2021/04/01 PHP
MySQL大小写敏感的注意事项
2021/05/24 MySQL
MySQL 数据库 增删查改、克隆、外键 等操作
2022/05/11 MySQL