制作composer包提供sdk扩展-创新互联

目录

1、初始化包
2、将代码推送到github远程仓库
3、为写好扩展包打上tag标签标记当前代码版本
4、将包发布到包管理平台

站在用户的角度思考问题,与客户深入沟通,找到淮安网站设计与淮安网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站建设、企业官网、英文网站、手机端网站、网站推广、域名申请、网页空间、企业邮箱。业务覆盖淮安地区。初始化包,生成

Creates a basic composer.json file in current directory

composer init

composer init 按照引导就可以生成了 , 详细的引导解释如下

This command will guide you through creating your composer.json config.
 
# 1. 输入项目命名空间,我是按github账号名/仓库名
# 注意/必须要符合 [a-z0-9_.-]+/[a-z0-9_.-]+
Package name (/) [root/test_composer]:yourname/projectname
 
# 2. 项目描述
Description []:这是一个测试composer init 项目
 
# 3. 输入作者信息,直接回车可能出现如下提示,有的系统可以直接回车,具体为什么?这里不详细介绍
 Invalid author string.  Must be in the format: John Smith# 3.1. 注意必须要符合 John SmithAuthor [Alan.Liu<5425902+liuyuanshan11@user.noreply.gitee.com>, n to skip]: liuyuanshan
 
# 4. 输入最低稳定版本,stable, RC, beta, alpha, dev
Minimum Stability []:dev
 
# 5. 输入项目类型
Package Type (e.g. library, project, metapackage, composer-plugin) []:library
 
# 6. 输入授权类型,默认回车
License []:
 
Define your dependencies.
 
# 7. 输入依赖信息,默认回车
Would you like to define your dependencies (require) interactively [yes]?
 
# 7.1. 如果需要依赖,则输入要安装的依赖
Search for a package:php
 
# 7.2. 输入版本号
Enter the version constraint to require (or leave blank to use the latest version): >=7.0.0
 
#  如需多个依赖,则重复以上两个步骤(7.1/7.2),没有则默认回车
Search for a package:
 
# 8. 是否需要require-dev,
Would you like to define your dev dependencies (require-dev) interactively [yes]?
 
{
    "name": "liuyuanshan11/demo",
    "description": "this is test project",
    "type": "library",
    "require-dev": {
        "php": "7.0.0"
    },
    "autoload": {
        "psr-4": {
            "Liuyuanshan11\\Demo\\": "src/"
        }
    },
    "authors": [
        {
            "name": "liuyuanshan"
        }
    ],
    "minimum-stability": "dev",
    "require": {}
}
# 9. 是否生成composer.json
Do you confirm generation [yes]?
 
# 现在安装依赖项吗
Would you like to install dependencies now [yes]?

随后调整composer.json配置文件,内容示例如下:

{
    "name": "liuyuanshan11/demo",
    "description": "this is test project",
    "homepage":"https://github.com/liuyuanshan11/demo",
    "require": {
        "php":">=7.0",
        "ext-json": "*"
    },
    "type": "library",
    "autoload": {
        "psr-4": {
            "Liuyuanshan11\\Demo\\": "src/"
        }
    },
    "authors": [
        {
            "name": "liuyuanshan",
            "email": "1019213039@qq.com",
            "homepage":"https://github.com/liuyuanshan11/demo"
        }
    ],
    "minimum-stability": "dev"
}

生成vendor目录

composer update

编写测试代码
src/Test.php

后再根目录 创建一下 index.php 引入类

index();

执行自动加载命令,为创建的类文件指定自动加载命名空间

composer dump-autoload -o
将代码推送到github远程仓库
# 将代码推送到master远程仓库
 git push origin master
为写好扩展包打上tag标签标记当前代码版本

为当前版本打上tag标签,在发布包管理平台时会使用到,因为包的拉取是根据版本拉取的,默认拉取最新tag标签的版本包

# 创建标签
git tag v1.0.0

# 查看所有标签
git tag

# 远程推送到github仓库
git push origin master --tags
将包发布到包管理平台

先到包管理平台进行注册登录,这里我选择了github账号进行授权登录比较方标

https://packagist.org/

点击【Submit】按钮,将github仓库地址放入解析框,最后点击【Check】便可完成包的发布
在这里插入图片描述
查看发布的包与迭代中的包版本
在这里插入图片描述

下载并使用包示例

下载包,默认拉取最新tag包

composer require liuyuanshan11/sd-micro-service-client

使用包

use liuyuanshan11\SdMicroServiceClient\MicroService;


$services = [
    'queue' =>'https://queue-service.sumian.com',
    'console' =>'https://console-service.sumian.com',
    'organization' =>'https://organization-service.sumian.com',
    'liu' =>'http://sdapi.test.top'
];

$obj = new MicroService('appId', 'appSecret', $services);
var_dump($obj->get('console')->act('controller', 'action', ["key01" =>"value01"]));

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前标题:制作composer包提供sdk扩展-创新互联
分享链接:http://scyanting.com/article/ghgcc.html