Composer是PHP的软件包管理系统,它提供用于管理PHP软件和依赖库关系的标准格式,它在单个项目的基础上进行管理,会在单个项目的某个目录(默认是vendor)进行安装。 它由Nils Adermann和Jordi Boggiano开发。 他们于2011年4月开始开发,并于2012年3月1日首次发布第一个版本。[2]Composer 的产生是由于受到了 Node.js 的 npm 以及 Ruby 的 bundler 的启发。[3] 该项目的依赖关系解决算法最初是来自openSUSE的libzypp包管理器。
在中国使用composer的时候,由于网络延迟以及防火长城问题,通常会通过镜像使用,数据的获取,文件的下载通过镜像使用。
Composer 提供了几个参数,包括[4]:
require
install
update
remove
self-update
composer require monolog/monolog
以上命令会在composer.json中生成
{ "require": { "monolog/monolog": "1.2.*" } }
所安装依赖库的版本可以由以下几种运算符定义:[5]
>=
以此类推,我们可以使用>、<和<=
>
<
<=
"php": ">=5.5.9"
!=
-
||
"symfony/symfony": "2.8 ¦¦ 3.0"
*
"symfony/symfony": "3.1.*"
~
"doctrine/orm": "~2.5"
^