PHP版本控制命令大全及速查表
php-v和php--version无区别,均为显示CLI环境下PHP版本的简写命令,不反映Web服务器所用版本;常见现象是CLI与WebSAPI版本不一致,需分别用php-v、phpinfo()查看。
php -v 和 php --version 无区别,均为显示 CLI 环境下 PHP 版本的简写命令,不反映 Web 服务器所用版本;常见现象是 CLI 与 Web SAPI 版本不一致,需分别用 php -v、phpinfo() 查看。

php -v 和 php --version 有啥区别?
没区别,php -v 是 php --version 的简写,输出当前 CLI 环境下实际执行的 PHP 版本。注意:它不反映 Web 服务器(如 Apache/Nginx)里跑的是哪个版本,只管命令行。
常见错误现象:php -v 显示 8.2,但浏览器里 phpinfo() 显示 7.4 —— 这说明 CLI 和 Web SAPI 用的是不同安装路径或不同二进制文件。
- 查 CLI 版本:运行
php -v - 查 CLI 实际路径:运行
which php或where php(Windows) - 查 Web 环境版本:必须在 Web 可访问的 PHP 文件中写
浏览器打开看
怎么临时切换 CLI 的 PHP 版本?
靠改 $PATH 顺序最直接,不是靠“配置文件”或“全局开关”。macOS/Linux 常用 brew install php@8.1 装多个版本,但默认只链接一个;Windows 用 XAMPP/WAMP 时,得手动把对应 php.exe 所在目录挪到系统环境变量 PATH 最前面。
性能影响:无。只是路径优先级变化,不启动额外进程或加载模块。
- Linux/macOS 示例:运行
export PATH="/opt/homebrew/bin/php@8.1:$PATH"(Homebrew 安装路径需按实际调整) - Windows 示例:把
C:\xampp\php移到系统环境变量PATH第一位,然后重启终端 - 验证是否生效:运行
php -v和which php,两者要对得上
php --ini 显示“Loaded Configuration File”为空是啥意思?
说明当前 CLI 没加载任何 php.ini,所有配置走默认内置值(比如 memory_limit 是 128M,display_errors 是 Off)。这不是报错,但容易踩坑:你改了 /etc/php/8.2/cli/php.ini,却忘了确认 CLI 实际读的是不是这个路径。
使用场景:调试扩展没加载、extension=redis 不生效、date.timezone 不起作用时,第一步就该跑 php --ini 看它到底读了哪几个文件。
- 查完整加载链:运行
php --ini,重点关注 “Loaded Configuration File” 和 “Scan for additional .ini files in” 两行 - 强制指定配置文件:运行
php -c /path/to/php.ini -v - Windows 下注意反斜杠转义:用
php -c "C:\php\php.ini",别漏引号
php -m 和 php -r 'print_r(get_loaded_extensions());' 输出不一样?
正常。php -m 列出的是 CLI SAPI 下成功加载的扩展(含 Zend 扩展),而 get_loaded_extensions() 是 PHP 代码里能调用的扩展列表,不包含 opcache、ioncube 这类 Zend 扩展。
容易踩的坑:看到 php -m | grep redis 有结果,就以为 new Redis() 能用,结果报 Class 'Redis' not found —— 很可能是扩展被编译成 redis.so 但没启用,或者启用了却在 Web 环境才加载(CLI 未启用)。
- 查扩展是否真可用:运行
php -m | grep -E '^(redis|mysqli|pdo)$' - 查扩展具体 ini 配置:运行
php --ri redis(替换成你要查的扩展名) - Windows 下扩展名是
.dll,ini 里写extension=php_redis.dll,不能漏php_前缀
which php、php --ini、php -m 这三个命令的输出,其他都是围绕它们展开的。
Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。
Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。
Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。
Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等
Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。
Android Studio 是 Google 面向 Android 应用开发提供的官方集成开发环境,以 IntelliJ IDEA 为基础,集成智能代码编辑、Gradle 构建、设备模拟、界面预览、调试测试及性能分析工具,













