Composer 是什么
成都創(chuàng)新互聯(lián)公司長期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為南川企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、做網(wǎng)站,南川網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
Composer 是 PHP5.3以上 的一個依賴管理工具。它允許你聲明項目所依賴的代碼庫,它會在你的項目中為你安裝他們。Composer 不是一個包管理器。是的,它涉及 "packages" 和 "libraries",但它在每個項目的基礎(chǔ)上進(jìn)行管理,在你項目的某個目錄中(例如 vendor)進(jìn)行安裝。默認(rèn)情況下它不會在全局安裝任何東西。因此,這僅僅是一個依賴管理。
這種針對項目的依賴管理方式并不是一種新的概念,事實上,Composer 是受到了 npm 之 Node.js 和 Bundler 之 Ruby 的啟發(fā)。
相信你應(yīng)該對 PEAR 有所了解。PEAR 是一種很多年前就有的 PHP 庫管理工具。然而,很多程序員并不喜歡使用 PEAR,有很多原因,首先,它過時了,其次,PEAR 要求你安裝整個系統(tǒng),而不是根據(jù)每個項目來安裝。也就是說,如果你有一個項目對一個稍微有點舊的庫有依賴,事情就麻煩了。要想了解更多的關(guān)于PHP包管理工具的歷史,可以去閱讀 Packages: The Way Forward for PHP 這篇文章。
如何安裝 Composer
Composer 的安裝十分簡單,幾行命令就能完成。我使用OS X,但對于任何的 *nix 系統(tǒng)而言都是一樣的。
請打開命令行窗口,運行下面的命令:
$ curl -s https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
第一行命令是將 composer.phar 文件下載到你的電腦里。第二行命令是將 composer.phar 文件移動到你的bin目錄里,這樣你就可以在計算機里全局訪問它。
現(xiàn)在運行下面這個命令:
$ composer
如果你成功了安裝了 Composer ,這個命令會返回給你一個有效的命令參數(shù)清單,以及使用描述。
如何在Windows上安裝 Composer
如果你想在Windows系統(tǒng)里安裝Composer,可以在官方網(wǎng)站上尋找安裝方法,http://getcomposer.org/。
如何使用 Composer?
現(xiàn)在,Composer已經(jīng)安裝到我們的電腦里了,我們可以開始用它導(dǎo)入項目中需要的代碼庫了。Composer需要一個配置文件,是一個JSON文件,我們把它放到項目的根目錄里。
比如,如果我們要使用Slim Framework,可以創(chuàng)建下面的 composer.json 文件:
{ "require": { "slim/slim": "2.*" } } 想通過Composer安裝 Slim,你只需要簡單的使用下面的命令: $ composer install
現(xiàn)在Slim會自動的下載下來,并且安裝到 vendor/slim/slim
目錄下。
是不是很簡單!
自動加載
現(xiàn)在,假設(shè)你的項目依賴很多不同的代碼庫,你希望能夠自動的加載這些庫。幸運的是,Composer 里有一個能夠執(zhí)行這種任務(wù)的文件,它能夠把你的項目所有依賴的庫都自動的下載到項目里。
想要使用 Composer 的自動加載器,只需要在相對的index文件或啟動文件里include一行:
require ‘vendor/autoload.php’;
這樣一來,在項目里添加新的依賴包時就不用擔(dān)心了。
例如:
// Autoload require ‘vendor/autoload.php’; // 實例或 Slim 應(yīng)用 $app = new \Slim\Slim(); // 定義 HTTP GET 路徑 $app->get(‘/hello/:name’, function ($name) { echo "Hello, $name"; }); // 運行 Slim 應(yīng)用 $app->run();
結(jié)論
在PHP項目里使用包管理工具是正確的方向。像Ruby這樣的編程語言已經(jīng)向我們展示了在項目里使用依賴關(guān)系管理工具的方便,節(jié)省了大量開發(fā)者的開發(fā)配置時間。
大量的流行框架也開始引用 Composer,有更多的開發(fā)者在自己的項目里使用 Composer。
作為一個PHP開發(fā)者,Composer 會是你的最佳拍檔,隨著使用率的增加,Composer必將成為PHP的基礎(chǔ)庫。
隨著像Composer這樣的好工具的增加,PHP也會變得越來越好用。Composer已經(jīng)為PHP社區(qū)解決了很多大問題,我們沒有理由還拒絕去使用它。
以上就是PHP Composer是什么技術(shù)?一起看看的詳細(xì)內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)其它相關(guān)文章!