jakubgiminski / value-object
此包已被废弃且不再维护。未建议替代包。
此包最新版本(dev-master)没有可用的许可信息。
抽象类库,旨在用作值对象的基类。
dev-master
2017-01-01 19:55 UTC
Requires (Dev)
- phpunit/phpunit: ^5.7
This package is auto-updated.
Last update: 2022-02-01 13:04:10 UTC
README
此库适用于在PHP中构建值对象。它是一组抽象类(每个用于每种标量类型),其中包含常见的验证机制,因此您无需编写它们。
到目前为止,我们有 StringValue
和 IntegerValue
,它们已经满足大多数需求。未来可能会实现更多标量表示(欢迎贡献)。
在此 处 可以找到一些单元测试示例。
所需PHP版本: 7.0.0 或更高版本
安装
composer require jakubgiminski/value-object
概述
每个值对象都有一个 getValue()
方法。
ValueObject\StringValue
验证规则(可选)
/** @var int */ protected $minLength; /** @var int */ protected $maxLength; /** @var array */ protected $validValues = [];
比较方法
public function isEqual(StringValueInterface $stringValue): bool; public function isShorterThan(StringValueInterface $stringValue): bool; public function isLongerThan(StringValueInterface $stringValue): bool;
使用示例
ValueObject\IntegerValue
验证规则(可选)
/** @var array */ protected $validRange = []; /** @var array */ protected $validValues = []; /** @var array */ protected $invalidValues = [];
比较方法
public function isEqual(IntegerValueInterface $integerValue): bool; public function isLessThan(IntegerValueInterface $integerValue): bool; public function isGreaterThan(IntegerValueInterface $integerValue): bool;
使用示例