technology-note/php/2.vscode调试php.md
2019-05-23 09:27:06 +08:00

83 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: "20190520"
date: "2019-05-20 15:42:00"
title: "如何在vscode上调试php详细步骤"
tags: ["php", "vscode", "xdebug", "windows"]
categories:
- "php"
- "环境配置"
---
上一篇写了如何让 php 在 apache 下部署运行。这一批来说说如何用 vscode 调试 php。
写代码,调试是必不可少的,那么如何才能在 vscode 中调试 php 代码?下面所说的全部基于 windows 下,如果要部署到 linux 上,那必须 docker。
# 下载 xdebug
到[https://xdebug.org/download.php](https://xdebug.org/download.php)这里下载,主要这里有很多个版本,要选择适配当前安装 php 版本的.
首先通过上一篇中的`phpinfo()`,查看自己的 php 信息
![php信息](https://raw.githubusercontent.com/FleyX/files/master/blogImg/20190522203012.png)
通过红圈圈出来的信息可以发现我们需要下载的是:
![下载xdebug](https://raw.githubusercontent.com/FleyX/files/master/blogImg/20190523084935.png)
注意NTS 版本对于的是没有 TS 标志的 xdebug
下载解压,将解压后的文件放到 php 的安装目录下的 ext 目录中D:\Program Files\php-7.3.5\ext.
# 配置 xdebug
在 php 安装目录中编辑`php.ini`文件,如果不存在这个文件,新建一个。输入如下内容:
```ini
[XDebug]
zend_extension="D:\\Program Files\\php-7.3.5\\ext\\php_xdebug-2.7.2-7.3-vc15-x86_64.dll";
xdebug.remote_enable = 1;
xdebug.remote_autostart = 1;
xdebug.remote_port = "9002";
xdebug.remote_host = "127.0.0.1";
```
需要指定 xdebug 的完整路径,否则会在默认目录中查找,导致报错。
在控制台中输入如下`php -m`,检查 xdebug 是否生效,生效状态会显示 xdebug 如下所示:
![php价值成功xdebug](https://raw.githubusercontent.com/FleyX/files/master/blogImg/20190523090243.png)
# vscode 调试 php
首先需要安装`php debug`这个插件,然后在配置文件`setting.json`中加入一行配置,配置 php 可执行文件路径:
```json
"php.validate.executablePath": "D:\\Program Files\\php-7.3.5\\php.exe"
```
然后就可以开始调试啦,写一个测试的 php 文件:
```php
<?php
echo "1";
echo "2";
echo "3";
echo "4";
?>
```
然后在调试面板新增 php 的调试配置文件:
![调试步骤1](https://raw.githubusercontent.com/FleyX/files/master/blogImg/20190523091745.png)
只需修改调试端口即可,改为上面配置的 xdebug 端口
![](https://raw.githubusercontent.com/FleyX/files/master/blogImg/20190523091914.png)
最后打开要调试的文件,按`F5`就能断点调试啦.
注意要选择第二个调试配置,也就是`Launch currently open script`
![](https://raw.githubusercontent.com/FleyX/files/master/blogImg/20190523092530.png)
**本文原创发布于:**[https://www.tapme.top/blog/detail/20190520](https://www.tapme.top/blog/detail/20190520)