You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP Xdebug调试会话中屏蔽Deprecated错误提示?

解决Xdebug因Firebird插件Deprecated错误暂停的问题

方案一:修改插件源码(快速临时修复)

找到edgardmessias\db\firebird\PdoAdapter类的beginTransaction方法,二选一修改即可:

  • 方法1:添加兼容属性
#[\ReturnTypeWillChange]
public function beginTransaction($isolationLevel = null)
{
    // 保留原方法代码
}
  • 方法2:补全返回类型声明(需PHP 7.0及以上版本支持)
public function beginTransaction($isolationLevel = null): bool
{
    // 保留原方法逻辑,确保最终返回布尔值
    return parent::beginTransaction($isolationLevel);
}

方案二:调整PHP配置忽略Deprecated通知

在项目对应的php.ini(或自定义php配置文件)中修改错误捕获级别,让Xdebug不再关注Deprecated类错误:

# 保留原有Xdebug配置,新增/修改错误级别
error_reporting = E_ALL & ~E_DEPRECATED & ~E_USER_DEPRECATED

修改后重启Web服务器,确保配置生效。

方案三:在VS Code调试配置中强制覆盖错误级别

如果无法修改全局PHP配置,可在.vscode/launch.json的环境变量中指定错误级别:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003,
            "env": {
                "PHP_ERROR_REPORTING": "E_ALL & ~E_DEPRECATED & ~E_USER_DEPRECATED"
            }
        }
    ]
}

方案四:升级插件(长期最优解)

优先尝试升级这款Firebird插件到最新版本,新版本通常会修复这类与PHP版本兼容的Deprecated警告问题。

内容的提问来源于stack exchange,提问作者TomR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 23:47:32