PHP包管理工具composer簡單總結


前言

接觸laravel之后,才知道有PSR,composer之類的東西,PHP已經不再是一門草根語言了。最近在嘗試玩thrift,需要安裝PHP thrift依賴庫,使用composer install apache/thrift會提示composer.json文件不存在,這個文件確實不存在,難道就不能安裝了嗎?后來發現可以通過composer require apache/thrift安裝,這個命令會嘗試創建composer.json配置文件。通過這件事情,發現對composer還是不是很了解,於是花了點時間詳細了解,於是使用自己的語言編織了這篇文章。

 

實現原理

獲取包元信息,項目源碼地址庫下載包以及依賴的包,安裝到本地

 

安裝

composer需要PHP5.3.2+版本以及需要開啟phar擴展

composer是由PHP編寫以及使用PHP phar打包壓縮的一個linux shell環境下可執行的文件(phar格式文件可以通過PHP命令行執行)
[wadeyu@localhost ~]$ curl -sS https://getcomposer.org/installer | php


[root@localhost wadeyu]# mv composer.phar /usr/local/bin/composer

 

配置

設置鏡像地址(中國的鏡像地址 -g參數表示全局配置)

composer config -g repo.packagist composer https://packagist.phpcomposer.com

設置進程執行超時時間(單位秒)

composer config -g process-timeout 600

查看配置列表

composer config -g -l

配置文件說明
項目根目錄下命名為composer.json的文件,使用JSON格式定義項目或者包相關的信息

 

使用

composer命令自動更新(有時候更新不了:()

composer self-update

聲明依賴包(當前執行目錄不存在composer.json會嘗試創建)

composer require 包名

安裝包(composer.json聲明需要安裝的依賴包)

composer install

更新包

composer update [包名1 包名2 ...]

搜索包(沒有composer.json配置文件會執行遠程搜索速度會比較慢:()

composer search 模式符

顯示命令列表
composer list

更新autoload自動加載配置
composer.json添加autoload配置
composer dump-autoload

后記

我大概深入的了解了下,現在基本上能夠滿足我日常使用,后面碰到問題可以查看下面的參考資料。多個項目間需要共享代碼而又不能發布到公共倉庫時,可以搭建本地包元數據服務以及包源碼下載的代碼管理服務,這個應該是可行的,我沒有嘗試過:(

 

參考資料
【1】composer中文網
http://www.phpcomposer.com/
【2】composer工具手動下載地址
https://getcomposer.org/download/
【3】Packagist/Composer中國全量鏡像
http://pkg.phpcomposer.com/
【4】composer.json配置詳細說明
http://docs.phpcomposer.com/04-schema.html
【5】composer基本用法
http://docs.phpcomposer.com/01-basic-usage.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM