PHP版本必须≥7.2.5,用php -v验证;需启用mysqli、mbstring、gd、zip、json、curl、openssl共7个扩展,通过php -m | grep确认;注意CLI与Web服务器可能使用不同php.ini,须用phpinfo()查Loaded Configuration File并分别配置。

检查PHP版本是否 ≥ 7.2.5
phpMyAdmin 明确要求 PHP ≥ 7.2.5(官方文档截至2026年仍维持该下限,但生产环境强烈建议 ≥ 8.2)。直接运行命令验证:
php -v
注意看输出第一行,例如 PHP 8.3.12 合规;若显示 PHP 7.0.33 或更低,必须升级。不要只看小数点后数字——7.2.4 仍不满足,必须 ≥ 7.2.5。
确认关键PHP扩展是否已启用
phpMyAdmin 依赖多个扩展,缺一不可。最常漏掉的是 mbstring 和 mysqli,仅靠 php -v 看不出来。执行:
php -m | grep -E "^(mysqli|mbstring|gd|zip|json|curl|openssl)$"
应至少输出这7个模块名。若某项缺失(比如没看到 mbstring),需手动启用:
立即学习“PHP免费学习笔记(深入)”;
- Debian/Ubuntu:
sudo phpenmod mbstring,然后重启 Web 服务 - RHEL/CentOS:
sudo yum install php-mbstring或dnf install php-mbstring
特别注意:token_get_all 不是扩展名,而是 PHP 内置函数,只要 PHP ≥ 7.2 就存在,无需单独安装。
验证PHP配置是否允许Web访问所需功能
某些 php.ini 设置会静默导致 phpMyAdmin 白屏或报错,不能只看扩展是否加载。重点检查:
-
session.save_path是否可写(常见于 SELinux 启用的 CentOS) -
file_uploads = On(导入大SQL文件必需) -
post_max_size和upload_max_filesize是否 ≥ 32M(否则导入失败无提示) -
date.timezone是否已设置(未设会导致时区警告,部分功能异常)
快速验证方式:新建一个 info.php 放到 Web 根目录,内容为 <?php phpinfo(); ?>,浏览器访问后搜索关键词,比翻配置文件更可靠。
为什么 php -m 显示扩展却仍报错?
这是最易踩的坑:CLI(命令行)PHP 和 Web 服务器使用的 PHP 配置可能是两套。例如 Apache 加载的是 /etc/php/8.2/apache2/php.ini,而你执行 php -m 查的是 /etc/php/8.2/cli/php.ini。结果就是 CLI 能看到 mysqli,但网页打开 phpMyAdmin 却提示“缺少 mysqli 扩展”。解决方法:
- 在
info.php页面里搜索Loaded Configuration File,确认实际生效的 ini 文件路径 - 对比该文件与 CLI 的
php --ini输出,确保扩展在两者中都启用 - 重启对应服务:
sudo systemctl restart apache2或sudo systemctl restart php8.2-fpm
多 PHP 版本共存时,这个差异几乎必然出现,别跳过验证步骤。



















