PHP 配置xdebug

正文

关于php debug的总结

php7以上的版本大多是匹配的xdebug3,而网上的教程多是配置的xdebug2,所以导致尝试了很多次都没有成功

在这里放一个链接,这里是配置的xdebug3的版本,而且我也跟着从0开始一直到最后完成

如果担心之前配置的东西特别乱,我们可以首先从phpstudy中重装一个7,x的php

image-20211123104437841

在这里安装的时候可以不选择xdebug的调试组件,因为选了以后他会在php.ini自动生成有关的参数,但是我们这里需要自己设置参数

以php7.3.9为例,首先我们需要匹配一下需要下载的xdebug版本.

把phpstudy中网站的php版本改成我们需要的

image-20211123104706475

访问127.0.0.1/phpinfo.php

image-20211123105027191

如果发现目录下没有phpinfo.php也没有关系,我们可以输入如下代码在D:\Phpstudy_pro\WWW也就是你网站的根目录下新建一个phpinfo.php

1
2
<?php
phpinfo();

我们对着网站ctrl+a全选然后复制,访问如下链接

https://xdebug.org/wizard

image-20211123105725673

在框内粘贴内容,点击下方的按钮,等待他的分析结果

image-20211123110029177

我们看到在分析结果下面有几步操作

  1. 下载dll并把DLL移动到 你要安装Xdebug的PHP环境的根目录下的ext文件夹里面,这里面已经根据你给出的phpinfo信息帮你计算好了路径,只需要完全照做就行了

  2. 把复制过来的文件重命名为php_xdebug.dll,此处注意你的文件夹是否会显示后缀名,如果没有显示的话需要先设置显示后缀名然后再修改,如果修改时遇到冲突,php_xdebug.dll已存在,就先删除原有的再重命名

  3. 第三步,打开php.ini文件(每个人的具体路径网页中会给出)

  4. 在文件尾部添加如下文本

    1
    2
    zend_extension = xdebug
    xdebug.mode = debug
  5. 在phpstudy中重启apache服务器

到这里,xdebug的配置已经完成,我们接下来配置phpstorm,这里推荐使用phpstorm2021,使用校园邮箱登陆可以免费

左上角文件->设置->PHP->服务器

名称我们可以自定义,主机的话要选择和phpstudy中相对应的,我们这里填写127.0.0.1,端口80.调试器xdebug,应用保存即可

然后我们再来到调试

image-20211123112001072

点击这里的验证按钮

image-20211123111805452

正常的验证结果如下,如果存在端口不匹配的问题,因为xdebug3的默认端口在9003,而我们又没有设置其他修改参数,所以可以在之前的调试界面修改phpstorm中的端口为9003

img

再次点击验证,直到所有项目都是绿色的对钩,说明我们服务器的配置是正常的

image-20211123112257558

编辑一下配置,下面我们尝试调试一下,首先把小电话的图标调成绿色状态,表示phpstorm正在侦听请求,image-20211123113402065这时候我们打开浏览器,访问127.0.0.1下的任意网页

20211123113733

phpstorm都会侦听到浏览器的请求,并从网页的第一行开始执行,下方我们可以看到相关的变量随着程序的运行发生变化.到这里php的调试过程完成

不过与c的调试不一样,这里的调试会在所有语句执行完毕之后渲染出页面,而不是每执行一句就渲染一次,而且注意默认链接超时时间是2000ms也就是说如果我们在某个断点处停顿两秒,整个请求就会超时,debug就会终止.

文章作者: Ch4n
文章链接: http://example.com/2021/11/24/PHP-配置xdebug/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Ch4n's field