Composer 是一款现代化的 PHP 包依赖管理工具,市面上的 PHP 应用开发基本都离不开它,它可以帮助 PHP 开发者更好地管理依赖、快速安装第三方包、自动化加载并解决依赖关系等等。
在这篇文章中,我们将分享一些常用的 Composer 命令帮助您更好地使用它。
1. 安装 Composer
在开始之前,首先必须安装 Composer。有两种安装方式:全局安装和项目内安装。下面介绍全局安装方式。
在 Linux 或者 macOS 系统中,您可以通过命令行下载安装包并执行安装命令来直接安装。
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
在 Windows 系统中,下载 Windows 安装包并执行安装即可。
安装完成后,您可以输入以下命令验证是否安装成功。
composer --version
如果安装成功,控制台将输出安装的 Composer 版本。
2. 初始化一个项目
初始化一个项目是遵循“安装 Composer、创建 composer.json 文件、安装依赖包”这三个步骤进行的。
要初始化一个项目,请在项目的根目录下面执行以下命令,为您的项目初始化 composer.json 文件。
composer init
执行此命令后,您将需要填写一些关于您的项目的相关信息,如包的名称、描述、作者、许可证等等。
成功初始化后,Composer 将会在根目录下创建一个 composer.json 文件,它记录了您的项目所有的依赖包和其他设置。
3. 安装依赖包
要安装依赖,您只需要执行以下命令:
composer install
如果此前没有安装 Composer,在执行此命令前,需要先执行 Composer 的安装命令:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
该命令会读取您的 composer.json 文件中的依赖列表并下载这些包到您的项目中,同时生成一个 lock 文件,里面记录了已经下载的包及其版本。这样一来,您和其他人都可以使用这个 lock 文件来安装相同版本的依赖包。
如果是多人开发项目,为了确保所有人使用的依赖包是相同的,相应的 composer.lock 文件必须要提交至版本控制系统中,以便其他人更新或者安装依赖。
备注
需要注意的是,执行 composer install 命令在仅在当前目录和锁文件 composer.lock 中安装依赖包,如果您修改了 composer.json 文件中的依赖列表,必须通过执行以下命令来更新依赖:
composer update
4. 列出当前项目中的所有包
如果您想列出当前项目所有的依赖包,您可以使用以下命令:
composer show
执行完毕后,命令行控制台将输出您项目中所有安装的依赖包列表,包含版本号和依赖项,如下所示:
intervention/image 2.5.1 Image handling and manipulation library with support for Laravel integration
monolog/monolog 1.25.1 Sends your logs to files, sockets, inboxes, databases and various web services
phpoffice/phpspreadsheet 1.13.0 A pure PHP library for reading and writing spreadsheet files
psr/log 1.1.3 Common interface for logging libraries
symfony/console v5.3.3 Eases the creation of beautiful and testable command line interfaces (CLIs)
symfony/flex v1.15.4 Composer plugin for Symfony
symfony/polyfill-mbstring v1.23.0 Symfony polyfill for the Mbstring extension
symfony/var-dumper v5.3.3 Provides mechanisms for walking through any arbitrary PHP variable
5. 查找依赖包
您可以使用以下命令来查找某个包:
composer search package-name
执行这个命令后,Composer 将从 Packagist 中心仓库中找到所有包含 package-name 的包,并将它们列出来。您可以通过查看包的名称和描述来找到您需要的包。
6. 更新依赖包
如果您的项目中某个依赖包有新版本发布,您可以通过以下命令将其更新:
composer update package-name
该命令将会更新包的版本,并根据更新后的版本来更新依赖树。
7. 卸载依赖包
如果您想在项目中删除某个依赖包,只需要执行以下命令:
composer remove package-name
执行该命令后,Composer 将会卸载该包及其依赖,并自动更新 composer.json 和 composer.lock 文件。
总结
在本篇文章中,我们分享了一些常用的 Composer 命令,这些命令可以帮助您更好地管理您的项目依赖包。本文所提及的内容只是 Composer 的冰山一角,还有更多的命令可以在官方文档中寻找到,这里只是为您提供了一个快速入门的指南。