php -v 是验证 PHP 安装是否成功的第一步,但需注意 CLI 与 Web 环境版本可能不一致;可通过 php -i 和 phpinfo() 对比配置文件路径及扩展状态来确认实际运行版本。

PHP 安装完成后,确认版本号是验证安装是否成功、环境是否就绪的第一步。直接执行 php -v 是最快速的方式,但实际中常遇到命令未识别、路径未配置、或 Web 环境与 CLI 环境版本不一致等问题。
命令行查 PHP 版本:先确认 php 命令是否可用
打开终端(Windows 用 CMD/PowerShell,macOS/Linux 用 Terminal),输入:
php -v
如果返回类似 PHP 8.2.12 (cli) (built: Oct 18 2023 12:34:56) 的信息,说明已正确加入系统 PATH;若提示 'php' is not recognized as an internal or external command(Windows)或 command not found: php(macOS/Linux),则需检查安装路径是否被添加到环境变量中。常见安装路径包括:
- Windows XAMPP:通常为
C:\xampp\php - macOS Homebrew:一般在
/opt/homebrew/bin/php或/usr/local/bin/php - Linux(apt):多为
/usr/bin/php
验证路径是否存在,可运行:
where php(Windows)或
which php(macOS/Linux)。若输出为空,说明命令未生效,需手动追加 PATH。
立即学习“PHP免费学习笔记(深入)”;
PHP 代码中获取版本号:PHP_VERSION 和 phpversion()
在 Web 环境(如浏览器访问 info.php)下,命令行方式失效,必须用 PHP 自身函数或常量。二者区别在于:
-
PHP_VERSION是编译时确定的字符串常量,不可修改,性能略优 -
phpversion()是运行时函数,可带扩展名参数(如phpversion('curl'))查扩展版本
常用写法:
注意:如果 phpversion('xxx') 返回 false,代表该扩展未启用,不是 PHP 主版本问题。
为什么 Web 页面和命令行显示不同版本?
这是最易被忽略的典型问题——CLI(命令行)和 Web SAPI(如 Apache 模块或 FPM)可能加载了完全不同的 PHP 二进制文件或配置。验证方法:
- 命令行执行:
php -i | grep "Configuration File"
查看 CLI 加载的php.ini路径 - Web 页面中写
,搜索 “Loaded Configuration File” 对应路径 - 对比两个
php.ini中的extension_dir、include_path及扩展启用状态
常见诱因:Mac 上同时用 Homebrew 和 MAMP;Windows 下 XAMPP 与独立安装的 PHP 共存;Linux 上通过 update-alternatives 切换过版本但未同步 Web 服务配置。
版本号本身不难查,难的是确认你查到的到底是不是当前正在跑服务的那个 PHP。尤其是部署 Laravel、WordPress 等项目前,务必用 phpinfo() 在目标域名下实测,别只信终端里那个 php -v。











