摘要:自動加載為了實現類的隨取隨用,類的命名空間定義建議遵從一定的規則。這種規則可以是某一項目組約定的。不過為了使得類庫統一,項目指定了一種命名空間的規范,被一些流行項目采用。用來指定在軟件包級別上區別。注意默認類庫是使用規范自動加載的。
簡介
composer是一個php中管理依賴的工具。它使你可以在項目中聲明用到的包/庫,之后它會自動安裝相關包。
Composer is not a package manager. Yes, it deals with "packages" or libraries, but it manages them on a per-project basis, installing them in a directory (e.g. vendor) inside your project. By default it will never install anything globally. Thus, it is a dependency manager.
Composer不是包管理器,但它基于項目來處理包和庫,把它們安裝在你項目的某文件夾里(vendor)。
Declaring dependencies#
聲明依賴Let"s say you are creating a project, and you need a library that does logging. You decide to use monolog. In order to add it to your project, all you need to do is create a composer.json file which describes the project"s dependencies.
如果你項目中需要monolog,為了把它加到你的項目中,你需要建一個composer.json文件,并在其中描述依賴。
{
"require": {
"monolog/monolog": "1.2.*"
}
}
這樣我們便添加了對monolog這個庫的引用。沒錯,就是這樣簡單。不過,你還需要使用composer來為你更新依賴包,打開你的Shell,切換到項目目錄下執行:
composer install
這時,Composer便自動從互聯網上更新指定依賴的庫了。你會發現你的項目文件夾里面多了一個vendor文件夾,那就是依賴庫包了。
接下來,你需要在你的系統的公共入口文件中引用自動加載器,以便自動加載類:
require "vendor/autoload.php";
安裝上面的例子讓大家對composer的使用有了一個大概的認識。下面將向大家介紹如何在PHP環境中安裝composer。
Unix/Linux/OSX環境很幸運,利用Unix Like環境安裝composer是一件很簡單的事情。只需要一行命令:
curl -sS https://getcomposer.org/installer | php
此時會為你在當前工作目錄安裝composer.phar文件,使用php composer.phar即可運行。當然,你可能更想讓composer變成像其他一樣的Unix命令,很簡單,只需要再加一步:
mv composer.phar /usr/local/bin/composer
注意,在權限受限的系統上,你可能需要使用sudo命令來提升至管理員賬號執行。
這時,你就可以像例子里面那樣使用composer了。
Windows環境Composer官方推薦使用安裝包進行安裝,據說下載Composer-Setup.exe這個即可用向導模式安裝。
關于手工安裝的方法,請參考http://getcomposer.org/doc/00-intro.md的介紹吧。
自動加載為了實現PHP類的隨取隨用,類的命名空間定義建議遵從一定的規則。這種規則可以是某一項目組約定的。不過為了使得類庫統一,PHP-FIG項目指 定了一種PHP命名空間的規范PSR-0,被一些流行PHP項目采用。Composer支持這種規范的類庫自動裝載器,只需要向 composer.json文件中添加autoload節點即可:
{
"autoload": {
"psr-0": {"Acme": "src/"}
}
}
關于PSR-0規范,有這么幾點重要的要求:
命名空間規范參考:
每個namespace需要一個頂層空間,即vendor name。用來指定在軟件包級別上區別。
命名空間和PHP文件的路徑是一一對應的,最終命名空間分隔符會被轉為DIRECTORY_SEPARATOR
文件名必須為類名.php
關于這個規范,可以參考http://blog.mosil.biz/2012/08/psr-0-autoloading-standard/這篇文章。有關PSR-0的更多內容,可以參考他們的官方網站:https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md
注意,修改了autoload后,要重新使用composer install。
注意:composer默認類庫是使用PSR-0規范自動加載的。所以一般無需額外配置。
查找所需類庫composer提供了一個類庫的“商店”,在這里,你可以立即找到想要使用的開源類庫包,然后把他們添加到你的項目中即可。傳送門:https://packagist.org/
打包自己的類庫將自己的類庫貢獻給大家,首先需要為自己的類庫設置打包信息(要首先保證自己的類庫是利用composer管理的)。在composer.json文件中設置:
{
"name": "your-vendor-name/package-name",
"require": {
"php": ">=5.3.0",
"another-vendor/package": "1.*"
}
}
然后就可以前去https://packagist.org/提交你的類庫了。
關于composer的更多信息,可以參考:
快速入門:http://getcomposer.org/doc/00-intro.md
文檔:http://getcomposer.org/doc/
包列表:https://packagist.org/
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/20813.html
摘要:簡介是用來管理依賴關系的工具。你可以在自己的項目中聲明所依賴的外部工具庫,會幫你安裝這些依賴的庫文件。會找出哪個版本的包需要安裝,并安裝它們將它們下載到你的項目中。在安裝目錄下新建一個文件,并將下列代碼保存到此文件中。 composer簡介 composer是PHP用來管理依賴(dependency)關系的工具。你可以在自己的項目中聲明所依賴的外部工具庫(libraries),Com...
摘要:你可以在自己的項目中聲明所依賴的外部工具庫,會幫你安裝這些依賴的庫文件。的出現,大大提升了的逼格。見例單個項目配置將配置信息添加到某個項目的文件中。如果是安裝的話,直接用就可以查看已安裝的的位置了。 Composer是 PHP 用來管理依賴(dependency)關系的工具。你可以在自己的項目中聲明所依賴的外部工具庫(libraries),Composer 會幫你安裝這些依賴的庫文件。...
摘要:想要更好的利用協同工作,學會創建自己的包是一項必不可少的技能。編輯項目的或,增加一項配置,例如以上配置使用中國全量鏡像網站作為默認中央倉庫。創建自己的包創建一個包只需兩步填寫包描述信息寫代碼。通過簡單兩步,我們創建的自己的包。 轉載請注明文章出處:https://tlanyan.me/php-review... PHP回顧系列目錄 PHP基礎 web請求 cookie web響應 ...
摘要:中文網系統要求運行需要以上版本。注中的路徑為相對于的路徑這個時候,你就可以調用你自己編寫的函數庫或者類庫了注本文內容參考了中文網,后續還會更新其它的實用功能 1.簡介 Composer 是 PHP 的一個依賴管理工具。它允許你申明項目所依賴的代碼庫,它會在你的項目中為你安裝他們。《Composer 中文網》 2.系統要求 運行 Composer 需要 PHP 5.3.2+ 以上版本。C...
摘要:簡明教程是的一個依賴管理工具。根據當前目錄下的文件來安裝依賴代碼庫。的資源官網英文安裝包列表英文中文網中文中國全量鏡像中文歡迎修正上的原文鏈接歡迎在上本項目或通過提供修正建議。 Composer簡明教程 Composer是PHP的一個依賴管理工具。 使用和安裝Composer,請確保已正確安裝PHP(版本5.3.2+),并且設置了PHP的環境變量(就是使用命令 php -v可以顯示出...
閱讀 1321·2021-09-22 15:09
閱讀 2656·2021-08-20 09:38
閱讀 2402·2021-08-03 14:03
閱讀 863·2019-08-30 15:55
閱讀 3368·2019-08-30 12:59
閱讀 3551·2019-08-26 13:48
閱讀 1886·2019-08-26 11:40
閱讀 647·2019-08-26 10:30