Composer:PHP 專用的套件相依性管理程式

Composer 是一個 PHP 專用的套件相依性管理程式,它可以依照套件相依性的設定檔,自動下載與安裝或升級各種 PHP 套件。


安裝 Composer


Linux 與 Mac OS X

如果是在 Linux 或是 Mac OS X 中,可以使用簡單的指令來將 Composer 安裝在自己的目錄中:
curl -sS https://getcomposer.org/installer | php
如果這個方式無法成功安裝的話,可以再嘗試另外一個方式:
php -r "readfile('https://getcomposer.org/installer');" | php
在預設的狀況下,它會檢查一些 PHP 的相關設定,並且下載一個 composer.phar 檔案到目前的目錄中,這個檔案是一個 PHAR(PHP archive)檔,包含了所有 Composer 執行所需要的檔案。

您也可以加上 --install-dir 指定安裝的目錄:
curl -sS https://getcomposer.org/installer | php -- --install-dir=bin
基本上您可以安裝在任何地方,若要放在系統的目錄中也可以:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Windows

如果是在 Windows 系統,就直接下載 Composer-Setup.exe 這個安裝檔,它會自動安裝最新版的 Composer 並且設定好系統的 PATH

使用 Composer

在開始使用 Composer 之前,您必須建立一個檔名為 composer.json 的設定檔,這個檔案會描述了您的專案所需要的相依性套件。

require 關鍵字

composer.json 設定檔中,最基本的語法就是以 require 列出專案所需要套件:
{
  "require": {
    "monolog/monolog": "1.0.*"
  }
}
require 所指定的物件內容會描述套件的名稱(如:monolog/monolog)與其版本(如:1.0.*)。

套件的名稱中包含兩個部分,一個是廠商名稱(vendor name),另一個是專案的名稱(project's name),大部份的情況下這兩個名稱可能會相同(就像上面的例子),而這樣設計的目的是為了處理不同套件卻使用了相同名稱的狀況,如果專案名稱相同的話,還可以靠作者的名稱來區別(例如 igorw/jsonseldaek/json)。

套件版本的部分,有好多種指定的形式,您可以依照自己的需求選擇:
名稱範例敘述
確切版本1.0.2完全依照指定的版本。
版本範圍>=1.0
>=1.0,<2.0
>=1.0,<1.1 | >=1.2
指定版本的範圍,可用的運算子有:>>=<<=!=。逗號(,)代表 AND 運算,pipe(|)代表 OR 運算,而 AND 運算的優先權大於 OR 運算子。
萬用字元1.0.*以萬用字元指定版本,1.0.* 等同於 >=1.0,<1.1
Tilde 運算子~1.2維持主要版本。~1.2 等同於 >=1.2,<2.0

在設定好 composer.json 之後,就可以執行這行指令,讓 Composer 自動安裝所依需要的套件:
php composer.phar install

這裡僅介紹 Composer 基本的用法,詳細的使用說明,可以參考 Composer 官方網站的文件
本站已經搬家了,欲查看最新的文章,請至 G. T. Wang 新網站