構建的PHP框架可參考github的內容:[https://github.com/zhipenwang/composer-framework](https://github.com/zhipenwang/composer-framework)
Composer 是 PHP 的一個依賴管理工具。它允許你申明項目所依賴的代碼庫,它會在你的項目中為你安裝他們。
## 依賴管理
Composer 不是一個包管理器。是的,它涉及 "packages" 和 "libraries",但它在每個項目的基礎上進行管理,在你項目的某個目錄中(例如 vendor)進行安裝。默認情況下它不會在全局安裝任何東西。因此,這僅僅是一個依賴管理。
這種想法并不新鮮,Composer 受到了 node's [npm](http://npmjs.org/) 和 ruby's [bundler](http://gembundler.com/) 的強烈啟發。而當時 PHP 下并沒有類似的工具。
Composer 將這樣為你解決問題:
a) 你有一個項目依賴于若干個庫。
b) 其中一些庫依賴于其他庫。
c) 你聲明你所依賴的東西。
d) Composer 會找出哪個版本的包需要安裝,并安裝它們(將它們下載到你的項目中)。
## 聲明依賴關系
比方說,你正在創建一個項目,你需要一個庫來做日志記錄。你決定使用 monolog。為了將它添加到你的項目中,你所需要做的就是創建一個` composer.json` 文件,其中描述了項目的依賴關系。
~~~
{
"require": {
"monolog/monolog": "1.2.*"
}
}
~~~
我們只要指出我們的項目需要一些 monolog/monolog 的包,從 1.2 開始的任何版本。
## 系統要求
運行 Composer 需要 PHP 5.3.2+ 以上版本。一些敏感的 PHP 設置和編譯標志也是必須的,但對于任何不兼容項安裝程序都會拋出警告。
我們將從包的來源直接安裝,而不是簡單的下載 zip 文件,你需要 git 、 svn 或者 hg ,這取決于你載入的包所使用的版本管理系統。
Composer 是多平臺的,我們努力使它在 Windows 、 Linux 以及 OSX 平臺上運行的同樣出色。
## 安裝 - *nix
下載 Composer 的可執行文件
局部安裝
要真正獲取 Composer,我們需要做兩件事。首先安裝 Composer (同樣的,這意味著它將下載到你的項目中):
~~~
curl -sS https://getcomposer.org/installer | php
~~~
>注意: 如果上述方法由于某些原因失敗了,你還可以通過 php >下載安裝器:
~~~
php -r "readfile('https://getcomposer.org/installer');" | php
~~~
這將檢查一些 PHP 的設置,然后下載 composer.phar 到你的工作目錄中。這是 Composer 的二進制文件。這是一個 PHAR 包(PHP 的歸檔),這是 PHP 的歸檔格式可以幫助用戶在命令行中執行一些操作。
你可以通過` --install-dir` 選項指定 Composer 的安裝目錄(它可以是一個絕對或相對路徑):
~~~
curl -sS https://getcomposer.org/installer | php -- --install-dir=bin
~~~
## 全局安裝
你可以將此文件放在任何地方。如果你把它放在系統的 `PATH` 目錄中,你就能在全局訪問它。 在類Unix系統中,你甚至可以在使用時不加 `php` 前綴。
你可以執行這些命令讓 `composer` 在你的系統中進行全局調用:
~~~
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
~~~
>注意: 如果上訴命令因為權限執行失敗, 請使用 sudo 再次嘗試運行 mv 那行命令。
現在只需要運行 composer 命令就可以使用 Composer 而不需要輸入 php composer.phar。
#### 全局安裝 (on OSX via homebrew)
Composer 是 homebrew-php 項目的一部分。
~~~
brew update
brew tap josegonzalez/homebrew-php
brew tap homebrew/versions
brew install php55-intl
brew install josegonzalez/php/composer
~~~
## 安裝 - Windows
### 使用安裝程序
這是將 Composer 安裝在你機器上的最簡單的方法。
下載并且運行[ Composer-Setup.exe](https://getcomposer.org/Composer-Setup.exe),它將安裝最新版本的 Composer ,并設置好系統的環境變量,因此你可以在任何目錄下直接使用 composer 命令。
### 手動安裝
設置系統的環境變量 PATH 并運行安裝命令下載 composer.phar 文件:
~~~
C:\Users\username>cd C:\bin
C:\bin>php -r "readfile('https://getcomposer.org/installer');" | php
~~~
>注意: 如果收到 readfile 錯誤提示,請使用 http 鏈接或者在 php.ini 中開啟 php_openssl.dll 。
在` composer.phar` 同級目錄下新建文件 `composer.bat` :
~~~
C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat
~~~
關閉當前的命令行窗口,打開新的命令行窗口進行測試:
~~~
C:\Users\username>composer -V
Composer version 27d8904
~~~
## 使用 Composer
現在我們將使用 `Composer` 來安裝項目的依賴。如果在當前目錄下沒有一個 `composer.json` 文件,請查看[基本用法章節](http://docs.phpcomposer.com/01-basic-usage.html)。
要解決和下載依賴,請執行 `install` 命令:
~~~
php composer.phar install
~~~
如果你進行了全局安裝,并且沒有 phar 文件在當前目錄,請使用下面的命令代替:
~~~
composer install
~~~
繼續 [上面的例子](http://docs.phpcomposer.com/00-intro.html#Declaring-dependencies),這里將下載 monolog 到` vendor/monolog/monolog `目錄。
## 自動加載
除了庫的下載,Composer 還準備了一個自動加載文件,它可以加載 Composer 下載的庫中所有的類文件。使用它,你只需要將下面這行代碼添加到你項目的引導文件中:
~~~
require 'vendor/autoload.php';
~~~
現在我們就可以使用 monolog 了!想要學習更多關于 Composer 的知識,請查看“基本用法”章節。