【Composer】实战操作二:自己创建composer包并提交



大纲

  • 创建自己的composer库

  • 提交到指定平台

  • 测试安装自己的库

  • 设置composer平台自动更新

  • 如何方便测试自己开发的库

开始动手

创建自己的composer库

个人博客后台有一部分是关于统计的,通过UA获取浏览器,设备,操作系统。本人封装了一个库,放在github上,源码地址:https://github.com/apanly/browser-detector,任何一个文件夹只有有个composer.json文件,就可以作为一个库或者项目的,大家可以自行在github新建自己的项目


600

600


browser-detector 的 composer.json内容如下


{
    "name": "apanly/browser-detector",
    "description": "根据UA判断浏览器类型和版本,操作系统,设备型号 ",
    "keywords": ["browser", "os", "operating system", "language", "detection","浏览器","操作系统","设备型号"],
    "authors": [
        {
            "name": "apanly",
            "email": "apanly@163.com"
        }
    ],
    "require": {
        "php": "^5.3.3 || ^7.0"
    },
    "autoload": {
        "psr-4": {
            "apanly\\BrowserDetector\\": "src"
        }
    }
}


其中最重要的两个关键字就是 name  和 autoload ,具体功能实现可以阅读源码


关键字描述
name包名,包括供应商名称和项目名称,使用 / 分隔,例如apanly/browser-detector
autoloadPHP autoloader 的自动加载映射


提交到指定平台

当开发完一个包之后,如果想提供给互联网人下载需要提交到  https://packagist.org 平台

提交地址:https://packagist.org/packages/submit (注册请自行解决)

apanly/browser-detector地址:https://packagist.org/packages/apanly/browser-detector 


600



600


测试安装自己的库

安装命令如下成功就可以直接使用,方便吧

composer require apanly/browser-detector

设置composer平台自动更新

直接上图说明,设置完成之后每次更新代码packagist平台也会同步的







600


如何方便测试自己开发的库

本人目前还没有找到方便的方法,测试的时候我会在固定地方 安装这个插件,然后进入库目录,你会发现本身就是一个git项目,所以我的步骤就是


  1. 进入库目录

  2. 直接修改源码

  3. 测试

  4. push到github

  

重复2-4步保存迭代更新


$ cd vendor/apanly/browser-detector on master
$ git remote -v
composer	https://github.com/apanly/browser-detector.git (fetch)
composer	https://github.com/apanly/browser-detector.git (push)
origin	https://github.com/apanly/browser-detector.git (fetch)
origin	git@github.com:apanly/browser-detector.git (push)


composer pachage browser-detector github git
编程浪子走四方:CodeRonin