composer怎么查看版本_composer版本查询教程【指南】

7次阅读

运行 composer –version 查看本地 composer 版本及构建时间,注意区分官方 phar 打包时间与安装时间;多版本共存时用 which/where 确认路径,结合 composer show –platform 和 diagnose 验证 php 环境与配置。

composer怎么查看版本_composer版本查询教程【指南】

直接看当前 Composer 版本号

运行 composer --version 就能立刻看到你本地实际在用的 Composer 版本和构建时间,比如 Composer version 2.7.7 (2024-06-12 13:45:00)。注意:这不是安装时间,而是官方 PHAR 包被打包的 UTC 时间。

  • 如果输出是 dev-main 或类似字样,说明你用的是从源码手动构建的开发版,没有精确时间戳
  • windows 用户若同时装了 Composer-Setup 和手动下载的 composer.phar,可能因 .bat 文件调用错 PHP 导致卡住或报错
  • 终端里执行 composer --version 显示旧版本?大概率是 PATH 里有多个 composer,老版本路径排在前面;用 which composermacos/linux)或 where composer(Windows)确认真实路径
  • 某些 ide(如 phpstorm)会自带封装器,默认绑定旧版 Composer,需在设置里手动指定可执行路径

查清楚到底用的是哪个 PHP 环境

Composer 是 PHP 脚本,它的行为完全取决于底层 PHP——版本、扩展(如 opensslzlib)、内存限制等。只看 composer --version 没用,必须确认它跑在哪个 PHP 上。

  • 运行 composer show --platform,会列出当前加载的 PHP 版本、已启用扩展、关键 ini 设置(如 memory_limit
  • 运行 composer diagnose,它会检查 PHP 兼容性、网络连通性、CA 证书路径,并给出明确修复建议
  • 如果你用 php8.2 composer.phar --version 显式指定解释器,那 composer --version 不会反映这点——必须用相同命令才能验证真实环境

查看项目里所有已安装依赖的版本

composer show 默认列出当前项目所有已安装包(含 requirerequire-dev),每行格式为 vendor/name version description,但不区分直接/间接依赖,也不显示层级关系。

  • 只想看 composer.json 里明确定义的依赖?加 --directcomposer show --direct
  • 想看完整依赖树(比如确认 guzzlehttp/guzzle 是被谁拉进来的)?用 composer show --tree
  • 输出太长?配合 head -20lesscomposer show | head -20
  • 脚本中需要纯文本格式便于解析?加 --format=plaincomposer show --format=plain monolog/monolog 输出就是 monolog/monolog 3.5.0 这种两字段结构

查某个包的所有可用版本(远程最新)

想升级前先看看有哪些版本可选?或者确认某新版本是否已发布?别去网页翻,用命令就行。

  • monolog/monolog 所有已发布版本(含 dev-mainbeta3.5.0):composer show -a monolog/monolog-a(即 --all)强制跳过本地缓存,直连 Packagist API
  • 只想提取版本号列表?用 JSON + jq 最干净:composer show -a --format=json monolog/monolog | jq -r '.versions | join("n")';没 jq 就用 grep + cut 粗略提取
  • 查完发现缺新版本?可能是 Packagist 镜像同步延迟,或本地网络访问受限;换用 --remote 参数(部分版本支持)或直接访问 packagist.org 验证
  • 注意:composer show vendor/package(不带 -a)只显示本地缓存或已安装过的版本,不一定全

最容易被忽略的是:你以为在用新版 Composer,其实 PATH 里藏着个老版本;你以为查到了最新包版本,其实只是本地缓存没刷新。动手前先 which composercomposer show -a,省掉一半排查时间。

text=ZqhQzanResources