香雨站

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 114|回复: 7

PHP开发-VSCode调试

[复制链接]

3

主题

4

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2023-1-8 17:09:22 | 显示全部楼层 |阅读模式
对于PHP开发来说成熟的编译器很多,比如PHPStorm、Sublime Text、Eclipse 等功能都很强大,各有特色,不过,今天咱们尝试下用VSCode调试PHP。原因很简单,VSCode小巧灵活,功能基本都有,插件很多。
    网上搜一下PHP+VSCode,虽然教程很多,可以参考,但大部分是相互摘抄,没有办法完全按照上面的步骤实施。所以写本篇文章是为了分享我在配置过程中遇到问题。
    1、配置好PHP运行环境。
如下图,这是我的环境,PHP主要由三大主要组成部分,Apache、 MYsql、 PHP、,配置好的标志是自己的PHP代码可以运行,


在浏览器中输入http://localhost/可以显示出预期的结果。
下载需要注意的是:下载PHP版本选择时,必须知道它编译器是VC几,是否是线程安全的(第二部)
具体如何配,请自行百度。


   2、下载XDebug动态库。
地址:Xdebug: Downloads,打开页面如下图:


选择和PHP对应的版本(VC版本一致,是否是线程安全的),下载结果是个dll,我选择的是:php_xdebug-2.7.0alpha1-7.1-vc14-x86_64.dll。
①将此dll放入PHP的ext文件夹中,
②并且修改PHP.ini文件,在其最后加入三句话:
[xdebug]
zend_extension = php_xdebug-2.7.0alpha1-7.1-vc14-x86_64.dll
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
    3、VSCode中安装php debug调试插件。如图所示:


到此、环境配置全部完毕。下面测试下结果。
    4、调试环境测试,自己建个文件夹,然后写一个test.php:
//test.php
<?php
$a = 5;
$b = 6.8;
$a = $a + $b;
echo $a;
phpinfo();
?>
写完源代码、在VSCode中选择调试操作,如下图(里面的代码不用做任何修改)


(注意调试按钮有两个选项,如图,如果没有选择3这个设置会弹出来如4所示的配置信息,如果弹出来的不是,可以找到4所在的路径将其文件从当前项目中删除,删除后再点击3的这个设置选择PHP环境。)
5、在菜单栏:文件->首选项->配置,右边新增加一行配置:
// 指向 PHP 可执行文件。
"php.validate.executablePath": "F:/workspace/3rdparty/WEB/php7.1/php.exe",

效果图:


调试时有两个选项:选择"Listen for XDebug"标示自己打开浏览器,输入网址-进入断点。
                              选择"Launch currently open script"标示调试当前文件。
WordPress系统的调试:

回复

使用道具 举报

2

主题

5

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-1-8 17:09:34 | 显示全部楼层
请问浏览器输入地址访问页面后调试器未进入断点应该如何排查?
回复

使用道具 举报

2

主题

4

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-1-8 17:10:21 | 显示全部楼层
为什么,左边出不了东西而且老是提醒端口已经被占用
回复

使用道具 举报

1

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-1-8 17:10:44 | 显示全部楼层
因为他告诉你里面的代码不用做任何修改,也就是端口保持9000,然而如果你用的是php-fpm(mac/linux),默认就会占用9000端口,这时你xdebug还想用9000端口,不提醒端口被占用才怪了,改成9001或9002就好了
回复

使用道具 举报

1

主题

7

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2023-1-8 17:11:17 | 显示全部楼层
当然也有可能你前面的监听没停止,又开启监听
回复

使用道具 举报

2

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-1-8 17:11:49 | 显示全部楼层
macOS上用vscode调试可以看我这篇文章:vscode使用xdebug调试php | Bruce's Blog
回复

使用道具 举报

1

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2023-1-8 17:12:15 | 显示全部楼层
看我的文章吧:https://www.xiebruce.top/1715.html
回复

使用道具 举报

0

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2023-1-8 17:13:11 | 显示全部楼层
xdebug3.0版本一些配置字段名字改了.
xdebug.mode=debug
xdebug.client_port = 9003
xdebug.client_host = localhost
文档:https://xdebug.org/docs/step_debug
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|香雨站

GMT+8, 2025-3-15 10:04 , Processed in 0.532297 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.. 技术支持 by 巅峰设计

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