kosmosafive/bitrix-ds
最新稳定版本:1.6.0
Composer 安装命令:
composer require kosmosafive/bitrix-ds
包简介
Структуры данных
README 文档
README
Collection
Типизированная коллекция
При использовании статических анализаторов (например, Psalm, PHPStan) можно использовать только комментарии. Если необходимо ограничивать выполнение кода в runtime, необходимо явно выбрасывать исключение.
Ниже приведен пример реализации типизированной коллекции, метод add.
use Kosmosafive\Bitrix\DS\Collection; use InvalidArgumentException; class Entity { } /** * @template-extends Collection<Entity> */ class EntityCollection extends Collection { /** * @param Entity $value * @return EntityCollection */ public function add(mixed $value): EntityCollection { if (!$value instanceof Entity) { throw new InvalidArgumentException("This collection only accepts instances of " . Entity::class); } return parent::add($value); } }
Request
Используется для фильтрации и валидации данных от клиента.
Для валидации можно использовать внешний сервис.
use Kosmosafive\Bitrix\DS\Request; readonly class GetRequest extends Request { #[Required] protected ?Uuid $id; public function __construct(\Bitrix\Main\Request $httpRequest) { $this->id = $this->filterUuid($httpRequest->get('id')); } public function getId(): ?Uuid { return $this->id; } } $getRequest = new GetRequest($this->getRequest()); $validateResult = $getRequest->validate();
统计信息
- 总下载量: 94
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 3
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2025-09-15