letsgoi/custom-list

PHP 自定义列表包

2.3.0 2024-01-12 06:58 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

贡献

欢迎拉取请求。对于重大更改,请首先打开一个问题以讨论您想要更改的内容。

请确保根据需要更新测试。

许可证

MIT