目录
selfupdate" >selfupdate
dumpautoload" >dumpautoload
install" >install
update" >update
require" >require
create-project" >create-project
search" >search
show" >show
config" >config
run-script" >run-script
首页 开发工具 composer 这些Composer命令,你肯定用到着!

这些Composer命令,你肯定用到着!

Jun 22, 2020 pm 01:43 PM
composer

下面由composer教程栏目给大家介绍Composer 的常用命令,希望对需要的朋友有所帮助!

这些Composer命令,你肯定用到着!

selfupdate

更新 composer 本身,请经常执行 composer selfupdate 以保持 Composer 一直是最新版本。

<span style="font-size: 16px;">composer selfupdate<br/></span>
登录后复制

等价于

<span style="font-size: 16px;">composer self-update<br/></span>
登录后复制

dumpautoload

当我们更改了 composer.json 文件中的 autoload 时,需要执行 composer dumpautoload,来让 autoload 立即生效。而不必执行 install 或 update 命令。

<span style="font-size: 16px;">composer dumpautoload<br/></span>
登录后复制

等价于

<span style="font-size: 16px;">composer dump-autoload<br/></span>
登录后复制

dumpautoload 命令有两个常用的选项:

  • --optimize (-o): 转换 PSR-0/4 autoloading 到 classmap ,以获得更快的载入速度。这特别适用于生产环境,但可能需要一些时间来运行,因此它目前不是默认设置。
  • --no-dev: 禁用 autoload-dev 规则。

install

<span style="font-size: 16px;">composer install<br/></span>
登录后复制

依据当前目录下的 composer.lock(锁文件) 或 composer.json 文件,所定义的依赖关系,安装依赖包。

install 命令会先检查 composer.lock 锁文件是否存在,如果存在,它将下载 composer.lock 文件中指定的版本,而忽略 composer.json 文件中的定义。

<span style="font-size: 16px;"># 查看 composer install 的帮助信息<br/>composer install -h<br/><br/># 只安装 require 中定义的依赖,而不安装 require-dev 中定义的依赖<br/>composer install --no-dev<br/></span>
登录后复制

update

如果你想更新你的依赖版本,或者你修改了 composer.json 中的依赖关系,想让 composer 按照 composer.json 文件中的定义执行更新操作,就用 update 命令。

<span style="font-size: 16px;">composer update<br/></span>
登录后复制

require

require 命令一般用来安装新的依赖包,并将依赖写入当前目录的 composer.json 文件中。

如果 composer.json 文件中,添加或改变了依赖,修改后的依赖关系将被安装或者更新。

<span style="font-size: 16px;">composer require<br/></span>
登录后复制

你也可以直接在命令中指明需要安装的依赖包。

<span style="font-size: 16px;">composer require barryvdh/laravel-ide-helper<br/></span>
登录后复制

安装指定版本的依赖包。

<span style="font-size: 16px;">composer require barryvdh/laravel-ide-helper:1.0<br/></span>
登录后复制

--dev 选项和 require-dev 相对应。如果你的依赖包仅仅用于开发环境,建议加上 --dev 选项。

<span style="font-size: 16px;">composer require --dev barryvdh/laravel-ide-helper<br/></span>
登录后复制

create-project

你可以使用 create-project 从现有的包中创建一个新的项目。

它相当于执行了 git clone 命令后,将这个包的依赖安装到它自己的 vendor 目录。

此命令有几个常见的用途:

  • 你可以快速的部署你的应用。
  • 你可以检出任何资源包,并开发它的补丁。
  • 多人开发项目,可以用它来加快应用的初始化。
<span style="font-size: 16px;"># 安装 Laravel 项目<br/>composer create-project --prefer-dist laravel/laravel blog 5.5.*<br/></span>
登录后复制

如果没有指定版本号,就默认安装最新的版本。

--prefer-dist: 当有可用的包时,从 dist 安装。

search

search 命令可以搜索远程的依赖包,通常它只搜索 packagist.org 上的包,你可以简单的输入你的搜索条件。

<span style="font-size: 16px;">composer search monolog<br/></span>
登录后复制

--only-name (-N)选项, 仅针对指定的名称搜索(完全匹配)。

show

列出已安装的依赖包,你可以使用 show 命令。

<span style="font-size: 16px;">composer show<br/></span>
登录后复制

列出镜像站点上所有的依赖包。

<span style="font-size: 16px;">composer show --all<br/></span>
登录后复制

如果你想查看某个指定的依赖包的详细信息,你可以输入包名称。

<span style="font-size: 16px;">composer show monolog/monolog<br/></span>
登录后复制

config

config 命令允许你编辑 Composer 的一些基本设置,无论是本地的 composer.json 还是全局的 config.json 文件。

查看 Composer 的全局配置信息:

<span style="font-size: 16px;">composer config -g --list<br/></span>
登录后复制

语法:config [options] [setting-key] [setting-value1] ... [setting-valueN]

setting-key 是配置选项的名称,setting-value1 是配置的值。可以使用数组作为配置的值(像 github-protocols),多个 setting-value 是允许的。

例如,全局配置 Composer 的国内镜像:

<span style="font-size: 16px;"># 推荐使用阿里云 Composer 全量镜像<br/>composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/<br/></span>
登录后复制

选项:

  • --global (-g): 操作 $COMPOSER_HOME/config.json 全局配置文件。如果不指定该参数,此命令将影响当前项目的 composer.json 文件,或 --file 参数所指向的文件。
  • --editor (-e): 使用文本编辑器打开 composer.json 文件。默认情况下始终是打开当前项目的文件。当存在 --global 参数时,将会打开全局的 config.json 文件。
  • --unset; 移除由 setting-key 指定的配置选项。
  • --list (-l): 查看当前配置选项的列表。当存在 --global 参数时,将会显示全局配置选项的列表。
  • --file="..." (-f):在一个指定的文件上操作,而不是 composer.json。它不能与 --global 参数一起使用。

run-script

run-script 命令,可用来手动执行脚本,只需要指定脚本的名称即可。

假如,composer.json 中存在如下脚本。

<span style="font-size: 16px;">{<br/>    "scripts": {<br/>        "post-update-cmd": "MyVendor\\MyClass::postUpdate",<br/>        "post-package-install": [<br/>            "MyVendor\\MyClass::postPackageInstall"<br/>        ],<br/>        "post-install-cmd": [<br/>            "MyVendor\\MyClass::warmCache",<br/>            "phpunit -c app/"<br/>        ]<br/>    }<br/>}<br/></span>
登录后复制

运行所有 post-install-cmd 事件下定义的脚本:

<span style="font-size: 16px;">composer run-script post-install-cmd</span><br/>
登录后复制

更多composer技术文章,请访问composer栏目!                  

以上是这些Composer命令,你肯定用到着!的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

解决 Craft CMS 中的缓存问题:使用 wiejeben/craft-laravel-mix 插件 解决 Craft CMS 中的缓存问题:使用 wiejeben/craft-laravel-mix 插件 Apr 18, 2025 am 09:24 AM

在使用CraftCMS开发网站时,常常会遇到资源文件缓存的问题,特别是当你频繁更新CSS和JavaScript文件时,旧版本的文件可能仍然被浏览器缓存,导致用户无法及时看到最新的更改。这个问题不仅影响用户体验,还会增加开发和调试的难度。最近,我在项目中遇到了类似的困扰,经过一番探索,我找到了wiejeben/craft-laravel-mix这个插件,它完美地解决了我的缓存问题。

如何使用Composer快速搭建LaravelCMS:mki-labs/espresso的实战经验 如何使用Composer快速搭建LaravelCMS:mki-labs/espresso的实战经验 Apr 18, 2025 am 07:36 AM

在开发一个新的Laravel项目时,我遇到了一个棘手的问题:如何快速搭建一个功能齐全且易于管理的内容管理系统(CMS)。我尝试了多种解决方案,但都因为复杂的配置和不便的维护而放弃。直到我发现了mki-labs/espresso这个LaravelCMS包,它不仅安装简单,还提供了强大的功能和直观的管理界面,彻底解决了我的问题。

laravel框架安装方法 laravel框架安装方法 Apr 18, 2025 pm 12:54 PM

文章摘要:本文提供了详细分步说明,指导读者如何轻松安装 Laravel 框架。Laravel 是一个功能强大的 PHP 框架,它 упростил 和加快了 web 应用程序的开发过程。本教程涵盖了从系统要求到配置数据库和设置路由等各个方面的安装过程。通过遵循这些步骤,读者可以快速高效地为他们的 Laravel 项目打下坚实的基础。

使用Composer解决依赖注入:PSR-11容器接口的应用 使用Composer解决依赖注入:PSR-11容器接口的应用 Apr 18, 2025 am 07:39 AM

在开发一个大型PHP项目时,我遇到了一个常见但棘手的问题:如何有效地管理和注入依赖。最初,我尝试使用全局变量和手动注入,但这不仅增加了代码的复杂度,还容易导致错误。最终,我通过使用PSR-11容器接口,并借助Composer的强大功能,成功解决了这个问题。

如何使用 Composer 解决 HTTP 请求问题:yiche/http 库的实用指南 如何使用 Composer 解决 HTTP 请求问题:yiche/http 库的实用指南 Apr 18, 2025 am 08:06 AM

在开发过程中,经常需要处理HTTP请求,这可能是为了获取数据、发送数据或者与外部API交互。然而,当面对复杂的网络环境和多变的请求需求时,如何高效地处理HTTP请求成为了一个挑战。我曾在一个项目中遇到过这样的问题:需要频繁地向不同的API发送请求,同时还要记录这些请求的日志,以便于后续的调试和分析。尝试了几种方法后,我发现了yiche/http这个库,它不仅简化了HTTP请求的处理,还提供了动态日志记录的功能,极大地提升了开发效率。

如何使用 Composer 解决 JavaScript 错误处理的难题 如何使用 Composer 解决 JavaScript 错误处理的难题 Apr 18, 2025 am 08:30 AM

在开发一个复杂的Web应用时,我遇到了一个棘手的问题:如何有效地处理JavaScript错误并将其记录下来。我尝试了几种方法,但都无法满足我的需求,直到我发现了dvasilenko/alterego_tools这个库。通过Composer安装这个库,我轻松解决了这个问题,并且大大提升了项目的可维护性和稳定性。可以通过以下地址学习Composer:学习地址

如何使用Composer解决Yii框架下的数据批量处理问题 如何使用Composer解决Yii框架下的数据批量处理问题 Apr 18, 2025 am 07:54 AM

在开发Yii框架项目时,常常会遇到需要从数据库中获取大量数据的情况。如果不采取适当的措施,直接获取所有数据可能会导致内存溢出,影响程序性能。最近在处理一个大型电商平台的项目时,我遇到了这种问题,经过一番研究和尝试,最终通过pavle/yii-batch-result这个扩展库解决了难题。

如何使用 Composer 提升 Laravel 应用的安全性:wiebenieuwenhuis/laravel-2fa 库的应用 如何使用 Composer 提升 Laravel 应用的安全性:wiebenieuwenhuis/laravel-2fa 库的应用 Apr 18, 2025 am 11:36 AM

在开发一个Laravel应用时,我遇到了一个常见但棘手的问题:如何提升用户账户的安全性。随着网络攻击的日益复杂,单一的密码保护已经不足以保障用户的数据安全。我尝试了几种方法,但效果都不尽如人意。最终,我通过Composer安装了wiebenieuwenhuis/laravel-2fa库,成功地为我的应用添加了双因素认证(2FA),大大提升了安全性。

See all articles