首先須要安裝composer,composer -v出現以下,則代表安裝成功。
php
{ "name": "www/test", "description": "wwwtest", "authors": [ { "name": "www", "email": "example@qq.com" } ], "repositories": [ { "type": "vcs", "url": "github項目url" } ], "version":"1.0.106", "require": { "smalot/pdfparser":"1.1.*" }, "autoload":{ "psr-4":{ "model\\":"src/" } } }
1.name和description是你給這個php項目起的名字,description須要來描述這個包的做用。
2.authors 做者能夠有多個
3.repositories至關於須要下載的代碼庫所在的倉庫,默認會有一個全局的倉庫,在這裏添加一個是由於若是你有個私人的倉庫,則能夠在這裏聲明
4.version是版本號(有幾種方式:1.確切版本號1.1.1,2.範圍版本號>=1.1,<1.2; 3.統配符版本號:1.0.*即,大於1.0小於1.1;4賦值運算版本號,~1.0表示用於匹配>=1.0而且小於2.0的版本)
5.require則經過「name」:"version"聲明,能夠有多個,require之後使用composer install命令composer會下載代碼並自動加載
6.autoload 自動加載類git
也能夠經過composer init生成一個composer.json
以smalot/pdfparser爲例,在包列表 查找對應包的信息。
github
使用composer install安裝
運行composer install
,composer會檢查composer.json組件的名稱和版本,下載到當前文件夾的vendor文件夾。如沒當前目錄沒有vendor文件夾,會在當前目錄生成一個vendor目錄。下載完成以後會在當前文件夾建立一個名爲composer.lock的鎖文件。當執行composer install會先檢查該文件的版本號,若是存在,
就先下載該文件指定的版本。若是某個組件有了新的版本,須要執行composer update
去更新並從新生成新的composer.lock文件。json
composer install 還會在vendor目錄下提供一個自動下載文件,在項目中執行require 'vendor/autoload.php'
語句引入這個文件。 加載相應的類文件。
自動加載有psr-0,psr-4,classmaphe和file四種規範形式。其中psr-4是最受歡迎的。自動加載規範psr-4
的自動加載基於文件夾和命名空間,在composer.json文件中直接添加autoload字段自動實現命名空間到目錄的映射。composer
//根文件夾 lib //根命名空間 model //file lib/A.php namespace model; class A { } //file lib/path/B.php namespace mode\path; class B{ } //file demo.php $a = new \model\A(); $b = new \model\path\B(); //或者use //file demo.php use \model\A; use \model\path\B; $a = new A(); $b = new B();