Composer (軟件)
外觀
此條目需要擴充。 (2015年2月24日) |
開發者 | Nils Adermann Jordi Boggiano |
---|---|
目前版本 |
|
原始碼庫 | |
程式語言 | PHP |
作業系統 | Cross-platform |
類型 | 軟件套件管理系統 |
特許條款 | MIT特許條款 |
網站 | getcomposer |
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
:向composer.json添加一個依賴庫,並且安裝它install
:從composer.json安裝依賴庫,通常在下載一個PHP專案的所有依賴時使用update
:根據composer.json中允許的版本範圍更新依賴庫remove
:刪除一個依賴庫,並將其從composer.json中移除self-update
:更新compsoer自身
依賴庫定義
[編輯]composer require monolog/monolog
以上命令會在composer.json中生成
{
"require": {
"monolog/monolog": "1.2.*"
}
}
指定版本
[編輯]所安裝依賴庫的版本可以由以下幾種運算子定義:[5]
運算子 | 作用 (放置在版本號前時) | 範例 |
---|---|---|
>=
|
允許高於此版本的依賴
以此類推,我們可以使用 |
"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
註解
[編輯]- ^ Release 2.8.4. 2024年12月11日 [2024年12月22日].
- ^ Release 1.0.0-alpha1 · composer/composer. GitHub. [2020-08-06]. (原始內容存檔於2019-03-27) (英語).
- ^ Introduction - Composer. getcomposer.org. [2020-08-06]. (原始內容存檔於2018-02-12).
- ^ Command-line interface / Commands - Composer. getcomposer.org. [2020-08-06]. (原始內容存檔於2020-08-04).
- ^ Versions and constraints - Composer. getcomposer.org. [2020-08-06]. (原始內容存檔於2020-09-14).