设为首页 收藏本站
查看: 2264|回复: 0

[经验分享] 转:vscode中调试php

[复制链接]

尚未签到

发表于 2017-12-28 23:39:18 | 显示全部楼层 |阅读模式
  转:http://blog.csdn.net/x356982611/article/details/52664334

简介
  PHP是动态语言没有调试器的话排错起来很是麻烦。vscode可以说是程序员的福音,启动速度快,插件越来越多,跨平台。现在说一下vscode上调试php文件

所需文件


  • xampp 集成服务器(也可以就是apache/IIS)
  • vscode
  • Xdebug
  • php-debug 插件
配置过程
  1:在Xampp(Apache/IIS)中安装xdebug:
  a.去 https://xdebug.org/download.php下载php对应版本的插件,php版本可以在xampp中的readme看到,下载这个PHP 5.6 VC11 TS (32 bit) 把dll文件拷贝到php/ext目录
DSC0000.jpg

  注意:如果是Apache或者是IIS,需要安装相应Xdebug.在选择Xdebug时,注意版本的选择:

1)VC9版本是用于IIS的,VC6是用于apache服务器的。VC9版本是说Xdebug程序是用VC2008编译的,VC6版本是用VC6编译的,VC11是用Visual Studio 2012编译的。如果你的电脑是安装了apache,一般是把PHP作为一个Module load到apache中,那么以apache父进程-多子进程的工作模式,是需要进行线程安全检查的,所以如果是以这种方式执行php,选择ts版本;如果你的电脑使用IIS配置PHP,那么需要选择Non-Thread Safe(NTS)版本。
2)如果你安装的apache版本在2.2以上,php在5.3以上,建议优先使用VC9或VC11版本;反之,建议优先选择VC6版本。
将下载后的xdebug文件复制到正确的目录下。下载后的xdebug程序是一个dll文件。
将dll文件拷贝到你的php的ext或zend_ext目录下。可以拷贝到“zend_ext”文件夹下,对于只有ext文件夹的朋友来说,就可以拷贝到ext文件夹下。  b:打开php目录下的php.ini ,添加几行配置,xdebug的路径按实际情况配置,配置完成后重启apache服务器
  

zend_extension=C:\xampp\php\ext\php_xdebug-2.4.1-5.6-vc11.dll  
[XDebug]
  
xdebug.remote_enable = 1
  
xdebug.remote_autostart = 1
c.验证PHP安装Xdebug扩展是否成功:利用phpinfo(),查看输出是否有“xdebug”字样,如下图所示。如果出现了如下图的“xdebug”字样和相应的版本信息,则说明安装成功。  如果没有出现“xdebug”,则原因很可能出现xdebug的版本选择错误,笔者之前反复安装没有成功,问题就出自版本的选择上。不知道如何选择版本的,建议读者多试试几个xdebug版本进行测试。
  

  

DSC0001.jpg   

  2: 在vscode中安装php-debug:
  a.在vscode中按 F1, 输入ext install php-debug 安装调试插件
  b.配置php路径:第一次安装vs会提示这个,需要配置下php.exe的路径,在用户设置里添加以下项
  

"php.validate.executablePath": "C:\\xampp\\php\\php.exe"  

DSC0002.jpg

  c:在vscode中的php文件打一断点,点Listen for XDebug 项目的运行,配置不用更改,默认就可以
DSC0003.jpg

  d:然后按F5,运行后跳出这些按键:
DSC0004.jpg

  e:直接在浏览器中打开要调试的php(不是文件路径而是服务器的地址(http://127.0.0.1/test.php)),vscode就会命中到打断点的地方

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-429173-1-1.html 上篇帖子: 为实施了IFD的Dynamics 365更换自签名的SSL证书以符合Chrome的要求 下篇帖子: C# 创建、部署和调用WebService的简单示例
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表