This article will introduce to you how to use xdebug to debug PHP in vscode. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.
Debugging is divided into two types: local debugging and remote debugging
[Recommended study: "vscode tutorial》、《PHP video tutorial》]
Local debugging
Local debugging requires prerequisites:
-
First, install xdebug extension in php. If php has been installed, you can use php -m | grep xdebug to check whether xdebug is installed.
If xdebug is not installed, you can use apt-get install php-xdebug to install it.
Then use php --ini to find the location of the php.ini file.
Then modify the php.ini file and add the following two lines
xdebug.remote_enable = 1 xdebug.remote_autostart = 1
If there is no vim in docker, you can use apt-get install vim to install vim.
-
Second, install the PHP Debug extension in vscode.
Then add the local PHP execution path in the settings.json file of vscode. The Linux system can use whereis php to find the path of the php command:
Then open the launch.json file:
There is already a default in it Added xdebug listening on port 9000.
At this time, just add a breakpoint on a certain line of the php file.
Remote debugging
Debug the PHP project on the remote host , need to change three places:
First, modify the xdebug.ini file on the remote host
Use php --ini to find the location of xdebug.ini:
php --ri xdebug You can view the contents of the xdebug.ini file. If your xdebug.ini is configured in php.ini, modify php.ini.
Change the corresponding remote_host and remote_port to your own ip and port. For example, the port here is 9020.
Second, modify the launch.json file in vscode
Add a new listening configuration for port 9020 in the launch.json file of vscode, for example:
The name in it can be chosen casually. The port should be set to the remote corresponding port, and the pathMappings should be set to the directory corresponding to your own project.
Third, open the remote debugging interface of your computer
For example, my debugging port here is 9020, open the advanced settings of the firewall:
Then add support for port 9020 in the new rule: Port->TCP->Specific port support 9020->Just go to the next step. You can also add it to outbound rules. Support for port 9020.
The configuration is now successful. At this time, add a breakpoint and run the remote project to see that it has been broken locally. Now you can happily find bugs:).
For more programming related knowledge, please visit: Programming Video! !
The above is the detailed content of A brief discussion on the method of vscode+xdebug for PHP debugging. For more information, please follow other related articles on the PHP Chinese website!

2022年了,该学会用VSCode debug了!下面本篇文章手把手带大家会习VSCode debug,希望对大家有所帮助!

本篇是VSCode配置文章,手把手教大家怎么在VSCode中配置使用 Geant4 和 Root,希望对大家有所帮助!

本篇文章扒拉一下vscode Prettier的选项,总结分享16个让你的代码变漂亮的属性,希望对大家有所帮助!

“工欲善其事,必先利其器!”,vscode作为前端开发的重要工具,其插件能大幅提升战斗力,精心收集12个插件,总有几款你还未曾拥有。

VSCode中如何开发uni-app?下面本篇文章给大家分享一下VSCode中开发uni-app的教程,这可能是最好、最详细的教程了。快来看看!

VScode中怎么开发置C/C++?怎么配置C/C++环境?下面本篇文章给大家分享一下Windows系统下VScode配置C/C++环境图文教程,希望对大家有所帮助!


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SublimeText3 Linux new version
SublimeText3 Linux latest version

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

WebStorm Mac version
Useful JavaScript development tools

SublimeText3 English version
Recommended: Win version, supports code prompts!
