目录
当我们用版本控制系统(如 git 、github 等)去开发一个 composer
包时是比较好的一种方式,但是当我们项目启动刚开始的时候,需要频繁地进行提交、更新操作。如何在没有 github 、git 、svn 之类的环境下如何开发一个自己的 composer 包就是我们接下来要讲解的内容了。文章源自编程技术分享-https://mervyn.life/550f9f22.html
创建目录、composer初始化
首先为我们的要开发的composer包初始化一个目录,如下操作:文章源自编程技术分享-https://mervyn.life/550f9f22.html
cd ~/workspace/www
mkdir DateHelper
composer init
然后按照composer的提示填写对应composer包的内容即可,执行完后生成的 composer.json
内容类似如下:文章源自编程技术分享-https://mervyn.life/550f9f22.html
{
"name": "mervyn1205/date-helper",
"description":"a light date helper for php",
"type": "library",
"license": "MIT",
"minimum-stability": "dev",
"authors": [
{
"name": "Mervyn",
"email": "404245127@qq.com"
}
],
"require": {
"php": ">=5.4.0"
},
"autoload": {
"psr-4": {
"DateHelper\\": "src\\"
}
}
}
开发该composer
DateHelper目录结构如下:文章源自编程技术分享-https://mervyn.life/550f9f22.html
├── composer.json
├── LICENSE
├── README.md
├── src
│ └── DateHelper.php
└── tests文章源自编程技术分享-https://mervyn.life/550f9f22.html
其中 src
目录就是 composer
包实际代码放置的目录了。文章源自编程技术分享-https://mervyn.life/550f9f22.html
这里需要注意的是 composer 包对应的命名空间。文章源自编程技术分享-https://mervyn.life/550f9f22.html
本地使用composer包
进入需要应用该 composer 包的项目目录,引用该composer包即可。文章源自编程技术分享-https://mervyn.life/550f9f22.html
cd /www/web/project
touch composer.json
composer.json 内容如下:文章源自编程技术分享-https://mervyn.life/550f9f22.html
{
"require-dev": {
"mervyn1205/date-helper": "@dev"
},
"repositories": [
{
"type": "path",
"url": "~/workspace/www/DateHelper"
}
]
}
执行composer install
然后加载composer的autoload文件即可。文章源自编程技术分享-https://mervyn.life/550f9f22.html
如果你的composer包已经开发完毕,可以提交到 https://packagist.org ,这样别人就可以直接通过 composer require 的方式引用你开发的 composer 包了。文章源自编程技术分享-https://mervyn.life/550f9f22.html
评论