vscode使用xdebug断点调试php代码
2021-05-03 11:27
                         标签:intel   target   setting   登录   编译   bing   cut   div   服务器      PHPDebug 用于调试php,这里主要指打断点、F5等操作。xdebug是跟踪、调试和分析PHP程序的运行状况   PHP IntelliSense 是php的函数智能提示功能   php cs fixer 可以对代码进行格式化,支持PSR规范   下载XDebug  https://xdebug.org/download.php 下载xdebug要结合php的版本、32/64位 、nts/非nts、VC14/VC15 把xdebug.dll放到php下的ext目录 pnp.ini    setting.json  配置php的执行路径 launch.json  配置xdebug port端口即为xdebug设置的端口 到此即可在windows上使用vscode加断点的方式调试php代码   使用vscode的Remote-SSH 插件远程打开linux上的文件,然后在linux的php上安装xdebug设置端口,即可使用vscode远程打断点的方式调试php代码 配置ssh-config 关于免密登录,需要把本地的id_rsa.pub发送到远程服务器上  ssh-copy-id -i ~/.ssh/id_rsa.pub  然后配置php.ini vscode使用xdebug断点调试php代码 标签:intel   target   setting   登录   编译   bing   cut   div   服务器    原文地址:https://www.cnblogs.com/xbblogs/p/12121943.html首先推荐三个在vscode上开发PHP的插件
windows上 
[XDebug]
zend_extension=php_xdebug.dll  
xdebug.remote_enable = 1  
xdebug.remote_autostart = 1
xdebug.remote_handler = dbgp     
xdebug.remote_host= 127.0.0.1  
xdebug.remote_port = 9001 
vscode中
"php.validate.executablePath": "D:/phpstudy_pro/Extensions/php/php7.3.4nts/php.exe"
"configurations": [
    {
        "name": "Listen for XDebug",
        "type": "php",
        "request": "launch",
        "port": 9001
    },
    {
        "name": "Launch currently open script",
        "type": "php",
        "request": "launch",
        "program": "${file}",
        "cwd": "${fileDirname}",
        "port": 9001
    }
]
linux上
首先在vscode上安装Remote-SSH 插件 
Host 192.168.xx.xx
    HostName 192.168.xx.xx
    User xuebing
    Port 10088
    #配置下面两项可免密登录
    #PreferredAuthentications publickey  
    #IdentityFile ~/.ssh/id_rsa
在linux上安装xdebug,这个需要下载编译
wget https://xdebug.org/files/xdebug-2.5.5.tgz
tar -zxvf xdebug-2.5.5.tgz
cd xdebug-2.5.5
phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
make 
make install
zend_extension="xdebug.so"
xdebug.remote_port= 8888
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_handler = dbgp
xdebug.remote_host= 192.168.x.x    
xdebug.remote_port = 8888
remote_host就是你的linux服务器的ip
vscode同windows
launch.json 
port改成当前linux上xdebug监听的port即可
setting.json  配置php的执行路径为当前linux服务器上的php可执行文件的路径
写在最后:在开发时遇到一个项目需要去调用另一个项目,即业务层调api层这样的,windows上需要在配置nginx的时候,用不同的fast-cgi端口,因此往往需要提前启动一个fast-cgi端口(php-cgi.exe -b 127.0.0.1:9002),很麻烦。linux有fpm因此比windows上方便很多,如果配了xdebug,又用了php-fpm,你就可以调式所有访问php的请求了(什么?Apache?不用!) 
上一篇:php线上预览日志--1.概述
下一篇:html 标签总结