PHP 8.0.6环境提示MySQLi不再支持的相关问题咨询
PHP 8 下 MySQLi 扩展相关问题说明及故障原因
核心结论
- PHP 官方从未在 PHP 8 任何版本中移除或停止支持 MySQLi 扩展,服务商给出的「PHP 8 已不再支持 MySQLi」的说法属于错误信息。你遇到的
Fatal Error: Class mysqli not found报错属于环境配置问题,和扩展本身的官方支持状态无关。
各异常现象的原因解释
关于更新日志的记录疑问
- MySQLi 属于成熟稳定的数据库扩展,日常仅做 BUG 修复和兼容性适配,没有频繁的功能更新需求,因此不会高频出现在版本更新日志中,8.0.2 后没有相关更新记录属于正常维护状态,并非官方停止支持。
关于官方手册的版本标注疑问
- 手册页仅标注支持 PHP 5、PHP 7 属于官方手册的标注疏漏,不属于官方正式的版本支持说明。目前 MySQLi 对 PHP 8 全系列版本(8.0/8.1/8.2/8.3)均提供完整支持,不存在兼容性问题。
关于 phpinfo 显示扩展已安装但命令行执行报错的原因
- 该问题的核心原因是环境中存在多套 PHP 配置:你通过 web 服务查看的
phpinfo()对应的是 web 进程关联的 PHP 版本,其配置文件已开启 mysqli 扩展;而你默认执行的php命令属于 CLI 版本的 PHP,对应的配置文件没有开启 mysqli 扩展,因此会抛出类未找到的报错。 - 服务商提供的
sp-php命令本质是指向已经加载了 mysqli 扩展的 CLI 版 PHP 可执行文件,因此调用后功能正常。
问题修复方案
- 若需要默认
php命令也支持 mysqli,可以执行php --ini定位 CLI 版本 PHP 对应的配置文件路径,编辑文件找到extension=mysqli配置项,删除行首的注释符号后保存即可生效。 - WampServer 下的同类问题,可以直接在面板的 PHP 扩展设置中手动勾选
mysqli选项,重启服务后即可恢复正常。
内容的提问来源于stack exchange,提问作者StefanoV827
相关产品推荐
相关产品推荐

