編寫自己的composer項目
composer
的出現給php
開發帶來極大的便利, 配合phpunit
的測試工具, 也可以更好的規范php開發. 盡管這些標准不是官方提供的, 但現在大部分的php框架幾乎都按照這個規范去開發和管理項目. 這里先介紹一下怎么去編寫自己的composer
項目
一. 創建github
項目
可以參考我的項目地址 https://github.com/yin32167/cpstpl

config
配置文件存放的位置src
源代碼tests
測試文件位置
.gitignore
git忽略文件LICENSE.md
項目許可證README.md
項目介紹composer.json
composer配置文件phpunit.xml
phpunit配置文件
1. 關於.gitignore
配置
執行
composer install
會生成composer.lock
文件, 並將相關的依賴下載到vendor
文件夾, 所以這兩個文件是需要忽略的
2. 關於LICENSE.md
內容
這個看大家項目的具體目的, 對於開源項目來講, 用MIT
協議比較常見
3. 關於README.md
內容
主要是介紹項目基礎信息及用法, 項目的github
頁面會將內容顯示出來, 以markdown
格式
二. 配置 composer
- 安裝
composer
:mac
用戶可以使用homebrew
,windows
用戶可以直接下載安裝包安裝
https://pkg.phpcomposer.com/#how-to-install-composer
注意確保
composer
命令在環境變量中
- 配置中國鏡像: 由於國外鏡像速度太慢, 影響開發效率
- 編輯配置文件
require
: 由於composer
是php
的包管理工具, 所以需要依賴php環境, 這里我們建議使用php7
以上版本, 畢竟各方面都有很大的提升require-dev
: 一般加載測試相關的包autoload
: 指定自動加載的文件夾, 現在一般采用psr-4
標准

會生成
composer.lock
及vendor
文件夾. 如果修改了composer.json
, 但之前已經生成了composer.lock
, 此時需要執行composer update
, 配置才能生效
三. 添加 phpunit
- 安裝
Windows 用戶具體參見 http://www.phpunit.cn/manual/current/zh_cn/installation.html#installation.phar.windows
一定要確保phpunit
在環境變量中
- 編輯配置文件
phpunit.xml
bootstrap
指定啟動測試時, 先加載vendor/autoload.php
testsuite
指定測試文件的目錄filter
過濾依賴文件的位置
- 執行測試樣例

四. 上傳到 packagist
- 先注冊, 需要關聯
github
-
創建
composer
模塊名稱, 盡量和github
一致就好 -
檢測提交

如果你沒按照它的規范, 會提示失敗, 並給出原因, 只需按照修改即可.
附:
如果github
中存在多個branch
, 則在生成composer
模塊的時候會打包對應dev-分支名
版本號, 如果不希望出現dev
, 也就是看起來是正式版本, 需要在github
打tag
, 此時會以tag
的名稱作為版本號而不會加上dev