prcomposer包过程记录
看到一位朋友的 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"
}
]
接下来
在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
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanfhifc
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01