下面由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包过程记录的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3042765.html