专栏首页技术人生创建个自己的composer包【工具】

创建个自己的composer包【工具】

一、创建项目+初始化包

1.mkdir minipay 创建个目录,cd minipay 进入目录,composer init 初始化一些包的信息

当然,初始化包的信息的时候,也可以不用composer init 命令,可以直接创建composer.json文件,里面加入以下信息

{
    "name": "minipay/minipay",
    "description": "alipay and wxpay and qqpay",
    "license": "proprietary",
    "authors": [
        {
            "name": "songmingshuo",
            "email": "18331274710@163.com"
        }
    ],
    "require": {
      "php": ">=7.0"
    },
    "autoload": {
      "psr-4": {
        "Pay\\": "src/"
      }
    },
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.phpcomposer.com"
        }
    }
}

二、初始化项目目录

1.做一个支付的composer包

由于之前做支付的时候,支付宝(还没有composer包)。微信支付也是涉及各种环境配置,比如客户端,小程序,H5支付,jsapi支付等各种各样很是麻烦。

有时候还有一些业务需求涉及QQ支付,红包提现等业务。所以想自己做一个涉及各方支付的composer包,方便后续使用。

2.在src下,新建Alipay,Wxpay,Qqpay目录

以上三个目录分别对应三种支付方式的官网SDK源代码

新建Config目录,里面创建Alipay.php,Config.php等一些配置文件,Config.php是三种支付的公共配置文件

新建Service目录,这个目录主要是我们需要开发的代码,里面涉及微信支付,支付宝支付,QQ支付等

3.与git地址关联

我这里使用的是码云(https://gitee.com/)

项目和码云关联,网上有很多教程,也可以参考我的以下博客

本地代码与git地址关联

三、提交包

1.地址:https://packagist.org/

2.在输入框位置写入gitee项目地址

3.最后生成的界面如下,然后在自己的项目里面,composer引入即可使用

四、如何使用

1.参考我已经生成的composer包 https://packagist.org/packages/minipay/minipay

2.主要功能为:支付宝,微信,QQ支付,可以下载研究源代码

3.参考码云的git地址 https://gitee.com/songms/minipay

4.备注

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • centos服务器上php7.3环境安装 Laravel【php】

    1. curl -sS https://getcomposer.org/installer | php

    sinnoo
  • Mysql中事务的使用【mysql】

    1,作用 主要用户操作处理量大,复杂度高的数据。要保证sql语句,要么全执行,要么全不执行,但它必须要满足四个条件:原子性,一致性,隔离性,持久性。 2...

    sinnoo
  • HTTP协议无状态,到底要怎么理解?【前端】

    这次你学聪明了,售货员给你写了个纸条,上面有超市的章印,下次你带着纸条来,买上了超市给你准备的面粉

    sinnoo
  • Linux下如何拆分大的日志文件?

    没设置好日志大小最大值,导致日志文件过大,普通编辑器根本没法打开或者特别卡,怎么办?拆分呗。

    编程珠玑
  • Magic Leap AR眼镜终于有的买了!2000美元剁手值得不?这有份详细测评

    拥有大量资金,从包括谷歌,阿里巴巴和新加坡淡马锡控股在内的投资者中筹集了19亿美元;作为一家科技公司,它坐落在佛罗里达,而不是加州硅谷。

    大数据文摘
  • Maven常用命令 原

    说到命令,则不得不提一下环境变量,在之前的博文中简单提了一下环境变量的配置,这里具体说一下。说完环境变量的配置,然后就是Maven的常用命令,这里说的是常用的几...

    云飞扬
  • 丑数II

    一份执着✘
  • 包装类及 LeetCode 每日一题

    Java 为8大数据类型都提供了相应的包装类,并提供属性和方法,更方便的操作基本数据类型。包装类位于java.lang包中。

    Carlos Ouyang
  • onSaveInstanceState和onRestoreInstanceState详解

    一. 作用 Activity的 onSaveInstanceState() 和 onRestoreInstanceState()并不是生命周期方法,它们不...

    Anymarvel
  • Lombok 的作者,成功讨伐 IntelliJ IDEA!

    栈长上班打开电脑,按往常一样打开 IntelliJ IDEA 正准备撸码,突然收到 IDEA 2020.2.1 的更新提醒:

    Java技术栈

扫码关注云+社区

领取腾讯云代金券