## composer.json
Composer 不是一個包管理器。是的,它涉及 "packages" 和 "libraries",但它在每個項目的基礎上進行管理,在你項目的某個目錄中(例如 vendor)進行安裝。默認情況下它不會在全局安裝任何東西。因此,這僅僅是一個依賴管理。
這種想法并不新鮮,Composer 受到了 node's npm 和 ruby's bundler 的強烈啟發。而當時 PHP 下并沒有類似的工具。
Composer 將這樣為你解決問題:
>[info]a) 你有一個項目依賴于若干個庫。
>[info]b) 其中一些庫依賴于其他庫。
>[info]c) 你聲明你所依賴的東西。
>[info]d) Composer 會找出哪個版本的包需要安裝,并安裝它們(將它們下載到你的項目中)。
聲明依賴關系
比方說,你正在創建一個項目,你需要一個庫來做日志記錄。你決定使用 monolog。為了將它添加到你的項目中,你所需要做的就是創建一個 composer.json 文件,其中描述了項目的依賴關系。
{
"require": {
"monolog/monolog": "1.2.*"
}
}
我們只要指出我們的項目需要一些 monolog/monolog 的包,從 1.2 開始的任何版本。
系統要求
運行 Composer 需要 PHP 5.3.2+ 以上版本。一些敏感的 PHP 設置和編譯標志也是必須的,但對于任何不兼容項安裝程序都會拋出警告。
我們將從包的來源直接安裝,而不是簡單的下載 zip 文件,你需要 git 、 svn 或者 hg ,這取決于你載入的包所使用的版本管理系統。