letsgoi / custom-collection
2.3.0
2024-01-12 06:58 UTC
Requires
- php: ^8.0
Requires (Dev)
- letsgoi/php-code-style: ^1.4
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2024-01-12 07:00:56 UTC
README
用于封装项目数组以强制相同类型的类。这是为了避免 PHP 数组类型提示问题。
要求
- PHP >= 8.2
使用
扩展 CustomList
抽象类,并使用 getListType
方法设置项目类型
use Letsgoi\CustomList\CustomList; class ItemList extends CustomList { protected function getListType(): string { return Item::class; } } // $items = [new Item(), new Item(), ...]; $list = new ItemList($items);
迭代项目
foreach ($list as $item) { // }
您可以将列表用作数组(设置、获取等)
可用方法
get($key = null)
根据键返回项目或没有键的所有列表
$list->get(0); // 'item' $list->get(); // ['item', 'item', ...]
add($item)
将项目追加到列表
$list->add($item);
merge(... $customLists)
合并一个或多个自定义列表的元素
$list->merge($list1, $list2 ...);
测试
运行测试
composer test
贡献
欢迎拉取请求。对于重大更改,请先创建一个问题以讨论您想要进行更改的内容。
请确保根据需要更新测试。