推荐六个鲜为人知的Composer命令
发布时间 - 2019-06-26 00:00:00 点击率:次Composer 是 PHP 的一个依赖管理工具。 如果你是一名 PHP 开发人员,那么你很可能每天都在使用它并且频繁的运行命令 require, install 和 update。也许你并没有意识到, 我们可以使用一些其他的Composer命令,来更加轻松的使用它。
它有许多的命令可以使用,但今天我将分享我使用的并且每天都有帮助的 6 个命令。
show
先说下 show 命令。它允许您查看项目的所有已安装包(包括依赖项),以及查看相关包的说明。所有这些信息都可以在Composer锁文件(composer.lock)中找到, 但是使用 show 命令相对来说是一种更简单、更方便的一种查看包信息的方法。
要列出所有已安装的包及其版本号和说明,只需使用 show:
composer show
有时候把这些信息用依赖关系树的形式查看会更容易理解, 可以通过 --tree or -t 参数:
composer show -t
如果要筛选返回的包,可以使用通配符传递一个额外的字符串参数 *:
composer show 'symfony/*'
这将返回所有已安装的symfony包。注意这里的引号, 如果您使用的是 bash shell,不需要加这个引号, 但是如果您使用的是 zsh 你不用引号的话就会报 ‘no matches found’ 错误。
如果要查看有关特定包的信息,需要完整包名:
composer show laravel/framework
这将向您显示安装的版本、它的许可证和依赖项以及它在本地安装的位置等信息。
why
如果您想知道安装特定软件包的原因,可以使用 why 命令来确定哪些依赖项需要它:
composer why vlucas/phpdotenv
why 为什么是depends命令的别名,但就我个人而言,我发现使用 ‘why’ 更容易记住。您可以使用--tree或-t标志在依赖树中查看此信息:
composer why vlucas/phpdotenv -t
why-not
有时,一个或多个已安装的软件包将阻止安装或更新软件包。 为了检查是哪些安装包,我们可以使用 why-not 命令(别名为 prohibits)。 例如,Laravel 最近发布了一个新的5.8版本的框架; 我们可以使用 why-not 命令检查任何阻止我们更新 laravel/framework 包的包:
composer why-not laravel/framework 5.8
同样,我们可以使用 --tree 或 -t 标记在依赖关系树中查看此信息:
composer why-not laravel/framework 5.8 -t
outdated
在使用 composer update 命令前,你也许想检测一下已安装的包,哪些有可以升级的。这可以使用 outdated 命令。
composer outdated
此命令是 composer show -lo 的别名之一。
根据语义化的版本,返回着色的代码,来标明每个包的状态:
- Green: 当前安装包已是最新版本
- Yellow: 有可升级的更新, 但可能有不兼容的修改。
- Red: 有可用的小版本升级 (一般是bug修复)
如果希望高亮显示小的升级版本, 可以使用 outdated 命令,以--minor-only 或者 -m 参数 :
composer outdated -m
状态
我发现自己经常会使用 install 、update 命令的参数 --prefer-source 来处理源代码安
装的依赖项。 然后,如果我修改了任何这些依赖项,我需要一种快速检查哪些包已被修改的方法。 status 命令提供了一种方便的方法。
您可以使用 --verbose 或 -v 参数来查看本地修改的软件包和文件:
composer status -v
我发现使用 verbose 标记是使用此命令最有用的方法。
许可
最后,知道您安装的每个软件包的许可证是非常有用的。 Composer 有一个方便的 licenses 命令,用于查询许可的完整列表:
composer licenses
更多相关的composer教程文章,请访问composer使用教程栏目!
# composer
# 可以使用
# 软件包
# 如果您
# 的是
# 安装包
# 您可以
# 我发现
# 会报
# 更容易
# 这将
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在Tomcat中配置并部署网站项目?
如何自定义建站之星模板颜色并下载新样式?
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
活动邀请函制作网站有哪些,活动邀请函文案?
制作电商网页,电商供应链怎么做?
MySQL查询结果复制到新表的方法(更新、插入)
如何解决hover在ie6中的兼容性问题
iOS发送验证码倒计时应用
Thinkphp 中 distinct 的用法解析
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
Laravel如何升级到最新版本?(升级指南和步骤)
中国移动官方网站首页入口 中国移动官网网页登录
用yum安装MySQLdb模块的步骤方法
奇安信“盘古石”团队突破 iOS 26.1 提权
Laravel如何创建自定义中间件?(Middleware代码示例)
如何在Windows虚拟主机上快速搭建网站?
Laravel怎么使用Intervention Image库处理图片上传和缩放
太平洋网站制作公司,网络用语太平洋是什么意思?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)
网页设计与网站制作内容,怎样注册网站?
Laravel怎么上传文件_Laravel图片上传及存储配置
微信小程序 HTTPS报错整理常见问题及解决方案
微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
Laravel如何使用Blade模板引擎?(完整语法和示例)
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
,在苏州找工作,上哪个网站比较好?
Laravel distinct去重查询_Laravel Eloquent去重方法
Bootstrap整体框架之CSS12栅格系统
Laravel如何保护应用免受CSRF攻击?(原理和示例)
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
详解Android图表 MPAndroidChart折线图
Python高阶函数应用_函数作为参数说明【指导】
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
如何彻底卸载建站之星软件?
b2c电商网站制作流程,b2c水平综合的电商平台?
C++时间戳转换成日期时间的步骤和示例代码
网站页面设计需要考虑到这些问题
Linux网络带宽限制_tc配置实践解析【教程】
如何快速生成橙子建站落地页链接?
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
Laravel如何使用withoutEvents方法临时禁用模型事件
Laravel怎么为数据库表字段添加索引以优化查询
如何在新浪SAE免费搭建个人博客?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
微信小程序 canvas开发实例及注意事项

