fratily/clone-with
最新稳定版本:0.2.0
Composer 安装命令:
composer require fratily/clone-with
包简介
README 文档
README
fratily/clone-withはPHPのオブジェクトクローンを拡張する関数を追加するライブラリです。
オブジェクトをクローンするときに任意のプロパティの値を書き換えられるようにします。 これは書き換えるプロパティがreadonlyでもprivateでも機能します。
NOTE: 現時点では継承しているスーパークラスのprivateプロパティを書き換えることはできません。 これは「スーパークラスのプライベートプロパティは隠ぺいされているし、外部から触られるべきではないんじゃね?」という作者の考えに基づいています。
使い方
このライブラリは、readonlyなプロパティで構成される不変オブジェクトをより使いやすくするために作成されました。
class Foo { public function __construct( public readonly string $value_string, public readonly int $value_int, ) {} public function withString(string $new_value) { return clone_with_new_props($this, ['value_string' => $new_value]); } public function withInt(int $new_value) { return clone_with_new_props($this, ['value_int' => $new_value]); } }
统计信息
- 总下载量: 18
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2023-11-05