您的位置 首页 php

PHP开发技巧之断点调试

前言

刚进入后端的phper在开发调试时,习惯性的使用var_dump,echo等在代码中埋下调试信息的做法,这种做法虽然简单除暴,还不错,当时面对更加多的调试信息输出和单步调试时,总显得那么无力,同时还有可能把这些调试信息扔到正式环境中,输出了一些安全信息,安全很难得到保证。难么有没有什么更加方便的调式方式呢,x Debug 就是今天我们要讲的了,该教程适用于 thinkphp ,laraval等php框架。

使用xdebug进行php断点调试

Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。

php 环境安装

这里我推荐大家在开发的过程中使用 phpstudy ,安装过程简单明了

php 环境变量设置

设置php过程中,如果我们使用的是phpstudy,我们要清楚phpstudy中选中的php版本是哪一个,如图我们正在使用的是php7.3.4nts版本

phpstudy界面

接下来我们把php配置到环境变量中,配置过程参考php包管理器 composer 的安装中的配置方式

下载xdebug

打开xdebug下载地址 选择和php对应的版本,我的php版本是7.3 非线程安全,因此选择如图

xdebug下载

如需查看自己的php版本,可新建phpinfo.php,代码如下

<?php
echo phpinfo();
 

把phpinfo.php放置web根目录,浏览器输入localhost/phpinfo.php查看

php配置xdebug

  • 将下载好的xdebug放置在对应php版本的ext文件夹下
php_xdebug-2.8.0beta1-7.3-vc15-nts-x86_64.dll
 

xdebug放置目录

  • 配置php.ini 打开对应php版本的根目录
D:\phpstudy_pro\Extensions\php\php7.3.4nts
 

用编辑器打开目录中的php.ini,文件最后添加如下代码

[xdebug]
zend_extension = D:\phpstudy_pro\Extensions\php\php7.3.4nts\ext\php_xdebug-2.8.0beta1-7.3-vc15-nts-x86_64.dll
xdebug.auto_trace = On 
xdebug.show_exception_trace = On 
xdebug.remote_autostart = On 
xdebug.remote_enable = On 
xdebug.remote_host = 127.0.0.1 
xdebug.remote_port = 9001 
xdebug.remote_handler = dbgp 
xdebug.profiler_enable = on 
 

切记把remote_port改为非9000,因为 php-fpm 默认使用9000端口,如果这里我们使用9000,就会出现php无法启动的问题。接下来保存重启nginx。

visual code配置x debug

  • 下载visual code

下载好后默认安装就好了

  • 下载xdebug插件

vscode下载xdebug插件

  • 配置settings.json

打开编辑器>文件>首选项>设置>点击右上角{}切换成代码模式,加如如下配置

{
 # 其他settings设置
 "php.validate.enable": true,
 "php.validate.executablePath": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts\\php.exe",
 "php.validate.run": "onType"
}
 

验证visual code php xdebug是否安装成功

  • 新建测试文件test.php

新建文件夹test,在文件加中新建test.php文件,内容如下

<?php
$a = 'xdebug test';
var_dump($a);
 
  • 使用visual code打开文件夹,配置debug

点击debug区>选择添加配置>选择php

使用vscode打开test文件夹,记得把port改为9001

  • 断点调试

设置断点

编辑器打开test.php,在

var_dump($a);
 

前面左键点击,按F5

vscode打开调试

运行php

编辑器ctrl + `,终端输入

php test.php
 

便可查看断电信息,整个debug过程就完成了

调试信息

结语

好的开发习惯和技巧能够提高自己的开发能力,巧妙的利用debug能够避免很多想不到的问题哟,觉得不错就分享吧!

文章来源:智云一二三科技

文章标题:PHP开发技巧之断点调试

文章地址:https://www.zhihuclub.com/151323.shtml

关于作者: 智云科技

热门文章

网站地图