PHP Composer 是什麼技術?
如果你是個程式設計師,很可能你會發現技術更新的輪子轉得讓你跟不上,比如使用者認證、資料庫管理、路由等技術。PHP裡有很多很成熟的框架來處理這些問題,於是你會認為這些框架使用起來應該很容易,不是嗎?
如果你現在手動的安裝使用 Zend, 或 Laravel 或 Symfony,你會發現並不是一件容易的事情,每種技術都有自己的各種依賴包,於是最終事情搞得的一團糟。
這個時候 Composer 的作用就出現了。Composer 是PHP的一個依賴管理工具。它能管理你的PHP專案所需要的所有依賴關係。也就是說,Composer 會將你的PHP專案需要的所有程式碼庫、依賴項從網上全部拉取下來,放到一起進行管理。
這種針對專案的依賴管理方式並不是一種新的概念,事實上,Composer 是受到了 npm 之 Node.js 和 Bundler 之 Ruby 的啟發。
相信你應該對 PEAR 有所了解。PEAR 是一種很多年前就有的 PHP 庫管理工具。然而,很多程式設計師並不喜歡使用 PEAR,有很多原因,首先,它過時了,其次,PEAR 要求你安裝整個系統,而不是根據每個專案來安裝。也就是說,如果你有一個專案對一個稍微有點舊的庫有依賴,事情就麻煩了。要想了解更多的關於PHP包管理工具的歷史,可以去閱讀 Packages: The Way Forward for PHP 這篇文章。
如何安裝 Composer
Composer 的安裝十分簡單,幾行命令就能完成。我使用OS X,但對於任何的 *nix 系統而言都是一樣的。
請開啟命令列視窗,執行下面的命令:
$ curl -s https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
第一行命令是將 composer.phar 檔案下載到你的電腦裡。第二行命令是將 composer.phar 檔案移動到你的bin目錄裡,這樣你就可以在計算機裡全域性存取它。
現在執行下面這個命令:
$ composer
如果你成功了安裝了 Composer ,這個命令會返回給你一個有效的命令引數清單,以及使用描述。
如何在Windows上安裝 Composer
如果你想在Windows系統裡安裝Composer,可以在官方網站上尋找安裝方法,http://getcomposer.org/。
如何使用 Composer?
現在,Composer已經安裝到我們的電腦裡了,我們可以開始用它匯入專案中需要的程式碼庫了。Composer需要一個組態檔,是一個JSON檔案,我們把它放到專案的根目錄裡。
比如,如果我們要使用Slim Framework,可以建立下面的 composer.json 檔案:
{ "require": { "slim/slim": "2.*" } } 想通過Composer安裝 Slim,你只需要簡單的使用下面的命令: $ composer install
現在Slim會自動的下載下來,並且安裝到 vendor/slim/slim
目錄下。
是不是很簡單!
自動載入
現在,假設你的專案依賴很多不同的程式碼庫,你希望能夠自動的載入這些庫。幸運的是,Composer 裡有一個能夠執行這種任務的檔案,它能夠把你的專案所有依賴的庫都自動的下載到專案裡。
想要使用 Composer 的自動載入器,只需要在相對的index檔案或啟動檔案裡include一行:
require ‘vendor/autoload.php’;
這樣一來,在專案裡新增新的依賴包時就不用擔心了。
例如:
// Autoload require ‘vendor/autoload.php’; // 範例或 Slim 應用 $app = new SlimSlim(); // 定義 HTTP GET 路徑 $app->get(‘/hello/:name’, function ($name) { echo "Hello, $name"; }); // 執行 Slim 應用 $app->run();
結論
在PHP專案裡使用包管理工具是正確的方向。像Ruby這樣的程式語言已經向我們展示了在專案裡使用依賴關係管理工具的方便,節省了大量開發者的開發設定時間。
大量的流行框架也開始參照 Composer,有更多的開發者在自己的專案裡使用 Composer。
作為一個PHP開發者,Composer 會是你的最佳拍檔,隨著使用率的增加,Composer必將成為PHP的基礎庫。
隨著像Composer這樣的好工具的增加,PHP也會變得越來越好用。Composer已經為PHP社群解決了很多大問題,我們沒有理由還拒絕去使用它。
推薦教學:《php視訊教學》
以上就是PHP Composer是什麼技術?一起看看的詳細內容,更多請關注TW511.COM其它相關文章!