介绍pr一个composer包过程记录

发布时间 - 2021-01-20 00:00:00    点击率:

下面由composer教程栏目带大家介绍pr一个composer包过程记录 ,希望对需要的朋友有所帮助!

看到一位朋友的 enum包,感觉还不错。

因为在实际开发中 我们使用  BenSampo/laravel-enum(https://github.com/BenSampo/laravel-enum)这个包去管理枚举。

在标准化项目中(比如国际化)其实这个包挺好的。但是在小项目中,先添加枚举类,再去enums.php 中添加翻译,让人感觉很繁琐

像这样子:

所以对这个注解读取“翻译”的这个包,我很感兴趣。

但是问题来了,这个包里面只能读取枚举翻译,如果我需要一个数组呢?

像这样:

AppStatus::toSelectArray()

我想用这个包,但是我又想用到toArray,我满足这两个条件,我在小项目中就可以操刀就干,而又不失优雅。

所以,我决定fork一份自己改一下,添加toArray 的方法

fork好了之后,在项目根目录中添加 一个 packages的文件夹,在这个文件夹中,git clone github.com/liaoshengping/x-phalcon...

composer.json 中添加,本地目录

    "repositories": [
        {
            "type": "path",
            "url": "packages\\x-phalcon-enum"
        }
    ]

接下来

composer require limingxinleo/x-phalcon-enum dev-master

在vendor 会生成一份 和packages 一样的 文件。这时已经映射到了 packages ,只需要修改其中的文件就可以了。

在  Enum.php 添加一个toArray 的静态方法。

    public static function toArray(){
        $ref = new ReflectionClass(static::class);
        $properties = $ref->getDefaultProperties();
        $_adapter = new ReflectionAdapter(static::class);
        $arr = $_adapter->getAnnotationsByName('Message', $properties);
        return $arr;
    }

push 到 自己的master 上,创建一个 Pull Request,如图:

等大佬检查代码,如果通过则合并。

这样就完成了我第一个pr
                                                          


# composer  # php  # laravel  # json  # require  # enum  # github  # git  # https  # 想用  # 大佬  # 自己的  # 让人  # 来了  # 我在  # 好了  # 在这个  # 第一个  # 我又 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  Laravel PHP版本要求一览_Laravel各版本环境要求对照  如何在IIS管理器中快速创建并配置网站?  Laravel如何集成Inertia.js与Vue/React?(安装配置)  Laravel如何自定义错误页面(404, 500)?(代码示例)  个人摄影网站制作流程,摄影爱好者都去什么网站?  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  canvas 画布在主流浏览器中的尺寸限制详细介绍  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  QQ浏览器网页版登录入口 个人中心在线进入  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  如何在万网自助建站中设置域名及备案?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  如何快速上传建站程序避免常见错误?  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  千库网官网入口推荐 千库网设计创意平台入口  中山网站推广排名,中山信息港登录入口?  html5的keygen标签为什么废弃_替代方案说明【解答】  详解Android图表 MPAndroidChart折线图  零基础网站服务器架设实战:轻量应用与域名解析配置指南  利用python获取某年中每个月的第一天和最后一天  详解Oracle修改字段类型方法总结  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  如何用PHP快速搭建高效网站?分步指南  文字头像制作网站推荐软件,醒图能自动配文字吗?  Android okhttputils现在进度显示实例代码  Python制作简易注册登录系统  EditPlus中的正则表达式实战(5)  如何快速搭建自助建站会员专属系统?  百度浏览器如何管理插件 百度浏览器插件管理方法  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  如何在阿里云完成域名注册与建站?  打造顶配客厅影院,这份100寸电视推荐名单请查收  太平洋网站制作公司,网络用语太平洋是什么意思?  网页设计与网站制作内容,怎样注册网站?  使用豆包 AI 辅助进行简单网页 HTML 结构设计  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  SQL查询语句优化的实用方法总结  高防服务器如何保障网站安全无虞?  如何基于PHP生成高效IDC网络公司建站源码?  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  香港服务器如何优化才能显著提升网站加载速度?  如何确保FTP站点访问权限与数据传输安全?