Composer (軟體)

Composer是PHP的软件包管理系统，它提供用于管理PHP软件和依赖库关系的标准格式，它在单个项目的基础上进行管理，会在单个项目的某个目录（默认是vendor）进行安装。 它由Nils Adermann和Jordi Boggiano开发。 他们于2011年4月开始开发，并于2012年3月1日首次发布第一个版本。Composer 的产生是由于受到了 Node.js 的 npm 以及 Ruby 的 bundler 的启发。 该项目的依赖关系解决算法最初是来自openSUSE的libzypp包管理器。

在中国使用composer的时候，由于网络延迟以及防火长城问题，通常会通过镜像使用，数据的获取，文件的下载通过镜像使用。

 使用语法 

 命令 
Composer 提供了几个参数，包括：

 require：向composer.json添加一个依赖库，并且安装它
 install：从composer.json安装依赖库，通常在下载一个PHP项目的所有依赖时使用
 update：根据composer.json中允许的版本范围更新依赖库
 remove：删除一个依赖库，并将其从composer.json中移除
 self-update：更新composer自身

 依赖库定义 
composer require monolog/monolog以上命令会在composer.json中生成{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

 指定版本 
所安装依赖库的版本可以由以下几种运算符定义：
+运算符作用 (放置在版本号前时)示例>=允许高于此版本的依赖
以此类推，我们可以使用>、<和<="php": ">=5.5.9" 包括 PHP 7!=排除一个版本的依赖-定义一个依赖的范围||或运算符，寻找二者中存在的版本"symfony/symfony": "2.8 ¦¦ 3.0" 将查找该依赖的2.8或3.0版本*通配符，允许一切符合要求的子版本"symfony/symfony": "3.1.*" 包括 3.1.1 版本~允许同级别的下一个版本"doctrine/orm": "~2.5" 包括 2.6，但是不包括 2.4 或 3.0.^类似于~，但是只允许向后兼容的版本

 支持的框架 

 Symfony ≥ 2
 Laravel ≥ 4
 CodeIgniter ≥ 3.0
 CakePHP ≥ 3.0
 FuelPHP ≥ 2.0
 Drupal ≥ 8
 TYPO3 ≥ 6.2
 SilverStripe ≥ 3.0
 Magento ≥ 2.0
 Yii ≥ 1.1
 Zend Framework ≥ 1
 Silex
 Lumen

 註解 

 外部連結 


Category:软件包管理系统
Category:PHP