decodelabs / lucid-support
在不引入主库完整依赖的情况下,为您的库提供 Lucid 清理功能
v0.4.0
2024-08-21 23:52 UTC
Requires
- php: ^8.1
- decodelabs/coercion: ^0.2.2
- decodelabs/exceptional: ^0.4
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-04 21:26:37 UTC
README
在不引入主库完整依赖的情况下,为您的库提供 Lucid 清理功能
Lucid-support 是一个中间件包,允许第三方库实现必要的接口,并为 Lucid 提供自定义清理器和验证器功能,而无需引入主库的完整依赖树。
在 DecodeLabs 博客 上获取新闻和更新。
安装
通过 composer 安装库
composer require decodelabs/lucid-support
使用方法
Lucid 提供接口和特质,以实现从您自己的值容器对象中提供输入清理。
但是,主库有一个庞大的依赖列表,当在您的库中部署 Lucid 提供者接口时,可能不是所希望的。
相反,这些接口已经在本包中划分,并使用 class_exists()
检查来确保 Lucid 在运行时可用。
如果您想在库中提供 Lucid 的清理器接口,您只需需要引入 此 包,并实现以下之一: DirectContextProvider
(直接传递值到方法),MultiContextProvider
(对于字典和映射)或 SingleContextProvider
(对于单值对象)。
例如
namespace My\Library; use DecodeLabs\Lucid\Provider\SingleContext; use DecodeLabs\Lucid\Provider\SingleContextTrait; class MyClass implements SingleContext { use SingleContextTrait; protected mixed $value; public function __construct(mixed $value) { $this->value = $value; } /** * This method provides the value to all other * sanitisation methods in the interface */ public function getValue(): mixed { return $this->value; } }
许可
Lucid Support 使用 MIT 许可证。请参阅 LICENSE 获取完整的许可文本。