Vscode下调试基于Homestead环境的Laravel框架

PS:最近在学Laravel框架,本机IDE是Vscode,因为Vscode是真的好用!今天突然想调试php代码了,于是疯狂地在网上查资料,经过一上午的不懈努力,终于成功了!

准备工作

  首先环境要保证安装对了,如Homestead,还有virtual box ,vagrant之类的。相信你已经安装了完成了基本的开发环境。

  1.接下来安装PHP debug,在VS Code扩展应用里安装该扩展:

  

  2.然后登陆到Homestead上:$vagrant up

              $vagrant ssh

  3.在Homestead上启用Xdebug(因为Homestead默认是安装了Xdebug的,所以不用安装了)

    $ xon

  4.然后找到访客的网关IP,$ netstat -rn | grep "^0.0.0.0 " | cut -d " " -f10

  我的输出是:10.0.2.2。记录下来,后面会用到。

  5.找到xdebug.ini的路径: $php --ini | grep 'xdebug'

  我的输出是/etc/php/7.1/cli/conf.d/20-xdebug.ini ,记录下来,后面会用到。

  6.编辑xdebug.ini(sudo vim /etc/php/7.1/cli/conf.d/20-xdebug.ini)

  删除里面原有的所有配置,加入下面的代码(远程主机的那项填的是你自己上面输出的结果哟):

  zend_extension=xdebug.so
  xdebug.remote_enable=1
  xdebug.remote_autostart=1
  xdebug.remote_host=10.0.2.2

  7.重新启动PHP-FPM服务:$ sudo service php7.1-fpm restart

  8.修改VsCode里,PHP下的launch.json文件,配置新的项(Listen for XDebug on Homestead)用于调试(加入路径的映射):

  

   9.测试,给E:/Code下的一个文件,加上断点,然后选中调试选项Listen for XDebug on Homestead,开始调试,

  进入项目的网站,并使之运行到断点处,观察调试结果如下:

  

  可以看到,左边监听栏输出了相应的异常结果,大功告成,接下来,就可以轻松地分析出错误的原因了,ok~。

  注意:如果不能成功调试,请返回第8步,仔细检查你项目的路径,然后填上相应的路径映射。

  

  

原文地址:https://www.cnblogs.com/yunche/p/9203089.html