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

CodeIgniter登录应用安装Google API Client后出现致命错误如何解决?

解决CodeIgniter4安装Google API Client后的致命错误

问题根源

第一个错误明确指出CodeIgniter\Log\Logger::emergency方法声明与Psr\Log\LoggerInterface不兼容,核心原因是Google API Client依赖的psr/log版本和CodeIgniter4所需版本冲突,导致接口方法的参数类型、返回值类型不匹配,进而触发后续的类加载失败错误。

修复步骤

1. 锁定兼容的psr/log版本

打开项目根目录的composer.json,添加或修改psr/log的版本约束,匹配当前CI4版本:

  • CI4.4.x及以上:指定psr/log ^2.0 || ^3.0
  • 旧版CI4:指定psr/log ^1.1 || ^2.0

示例修改:

"require": {
    // 保留其他已有依赖
    "psr/log": "^2.0"
}

2. 重新同步依赖

执行命令更新依赖,确保版本完全匹配:

composer update psr/log
# 若仍有问题,可重新安装所有依赖
composer install --no-dev

3. 清除系统缓存

CI4的类映射缓存可能导致旧代码残留,需清理:

  • 删除项目writable/cache目录下的所有文件
  • 启用OPcache的话,重启Web服务器(比如XAMPP的Apache)

4. 确认Google API Client版本兼容性

针对PHP版本锁定兼容的客户端版本:

  • PHP 8.0+:推荐安装google/apiclient:^2.15
  • 执行指定版本安装命令:
composer require google/apiclient:^2.15

5. 刷新自动加载映射

确保Composer自动加载配置正确,执行命令刷新:

composer dump-autoload

关键提示

  • 优先通过依赖版本匹配解决问题,不要盲目更换PHP版本,先确认CI4官方支持的PHP范围(CI4.4.x支持PHP 7.4~8.3)
  • 类找不到错误是接口兼容问题引发的连锁反应,解决版本冲突后会自动消失

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 03:16:19