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 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.
Debug the PHP project on the remote host , need to change three places:
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.
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.
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!