php -v 查命令行版本,phpinfo() 查Web服务器版本;两者不一致时需分别排查PATH、Web服务器模块配置及php.ini路径。
直接在命令行输入 php -v 就能看到当前 PHP 版本,这是最快速、最可靠的检测方式。
命令行查版本:确认是否真“过低”
很多所谓“PHP过低”的问题,其实只是开发环境和 Web 服务器用的不是同一个 PHP。先确认你实际在用的是哪个:
-
php -v—— 查命令行(CLI)版本,适合跑脚本、Composer、Laravel Artisan 等 -
phpinfo();放进一个.php文件里,用浏览器访问 —— 查 Web 服务器(如 Apache/Nginx)加载的 PHP 版本 - 如果两者不一致(比如 CLI 是 8.2,但
phpinfo()显示 7.4),说明 Web 服务没用上新版本,光升级 CLI 没用
Linux/macOS 下常见版本混乱原因
尤其在 macOS(自带老 PHP)、Ubuntu(多源混装)、或用 Homebrew / apt 手动装过多次 PHP 的机器上,容易出现路径冲突:
- 执行
which php看调用的是哪个二进制文件,比如/usr/bin/php(系统自带) or/opt/homebrew/bin/php(Homebrew) - 执行
php -i | grep "Configuration File"查当前生效的php.ini路径,再确认该配置是否启用预期扩展(如opcache、curl) - Web 服务器可能加载了旧版模块,例如 Apache 的
libphp.so还指向 PHP 7.4,需检查LoadModule php_module行和AddHandler配置
Windows + XAMPP/WAMP 用户特别注意
这类集成环境常把多个 PHP 版本共存,但只激活一个: