serendipity_hq / component-value-objects
一套用于管理简单和组合值的值对象
7.1.5
2024-03-15 17:40 UTC
Requires
- php: ^7.4|^8.0
- darsyn/ip: ^4
- egulias/email-validator: ^2.1.10 || ^3.0.0 || ^4.0.0
- giggsey/libphonenumber-for-php: ^8.8
- laminas/laminas-uri: ^2.6.2
- moneyphp/money: ^3.3|^4.0
- thecodingmachine/safe: ^1.3|^2.0
Requires (Dev)
- ext-ast: *
- ext-bcmath: *
- bamarni/composer-bin-plugin: ^1.4
- dg/bypass-finals: ^1.1
- doctrine/dbal: ^2.5 | ^3.0
- doctrine/orm: ^2.5
- phpstan/phpstan: 1.10.62
- phpstan/phpstan-phpunit: 1.3.16
- rector/rector: 1.0.3
- roave/security-advisories: dev-master
- serendipity_hq/rector-config: ^1.0
- symfony/form: ^4.4|^5.4|^6.0
- symfony/var-dumper: ^4.4|^5.4|^6.0
- thecodingmachine/phpstan-safe-rule: 1.2.0
- twig/intl-extra: ^2.12|^3.0
- dev-dev
- 7.1.5
- 7.1.4
- 7.1.3
- 7.1.2
- 7.1.1
- 7.1.0
- 7.0.0
- 6.0.0
- 5.0.7
- 5.0.6
- 5.0.5
- 5.0.4
- 5.0.3
- 5.0.2
- 5.0.1
- 5.0.0
- 4.0.11
- 4.0.10
- 4.0.9
- 4.0.8
- 4.0.7
- 4.0.6
- 4.0.5
- 4.0.4
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 3.1.3
- 3.1.2
- 3.1.1
- 3.1.0
- 3.0.1
- 3.0.0
- 2.7.0
- 2.6.6
- 2.6.5
- 2.6.4
- 2.6.3
- 2.6.2
- 2.6.1
- 2.6.0
- 2.5.5
- 2.5.4
- 2.5.3
- 2.5.2
- 2.5.1
- 2.5.0
- 2.4.4
- 2.4.3
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2
- 2.1.2
- 2.1.1
- 2.1
- 2.0.3.1
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3
- 1.2.0
- 1.1
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- 0.3.4
- 0.3.3
- 0.3.2
- 0.3.1
- 0.3
- 0.2.1
- 0.2
- dev-dependabot/composer/dev/phpstan/phpstan-1.12.4
- dev-master
- dev-release/7.1.5
This package is auto-updated.
Last update: 2024-09-19 08:47:43 UTC
README
Serendipity HQ 值对象
一套用于管理简单和组合值的 PHP 值对象。
当前状态
功能
它支持 SimpleValueObjects
和 ComplexValueObjects
。
通过传递数组来对复杂值对象进行加湿。如果数组中的键不被识别为对象的属性,它将被添加到 $otherData
数组中,以便不会丢失。
其中一些值对象也支持在 Doctrine 中的持久化,提供 自定义映射类型(见下文)。
你喜欢这个库吗?
留下 ★
或者运行
composer global require symfony/thanks && composer thanks
以感谢你当前项目中使用的所有库,包括这个!
值对象是什么
值对象是 PHP objects
,用于表示和管理简单或复杂值。一旦设置,值对象就不能修改而不改变其身份。
简单值对象 表示一个简单值,如电子邮件。 复杂值对象 表示复杂值,为了真正表示一个值,需要多个值,如需要金额和货币才能被理解和有意义的金额。
PHP 只支持一个值对象: DateTime
对象。
此库为其他类型的值提供支持,区分它们之间的复杂和简单。
要更好地理解值对象背后的概念,您可以 阅读此文章。
通过 Composer 安装 component-value-objects
$ composer require serendipity_hq/component-value-objects
该库遵循http://semver.org/版本规范。
可用的值对象
目前,此库支持以下值对象
- 地址:内置。一个更高级的值对象是
commerceguys/addressing
(但它更适合于寄件地址而不是地址本身); - 货币汇率:内置;
- 电子邮件:一个从Wowo的gist EmailValueObject派生的基本类。它实现了`egulias/email-validator以验证电子邮件;
- IP:只是对库
darsyn/ip
的代理; - 货币:只是对库
moneyphp/money
的代理; - 支付:内置
- 电话:只是对库
giggsey/libphonenumber-for-php
的代理; - 税:内置
- URI:只是对库
Laminas\Uri
(之前为Zend Uri)的代理。一个更高级的值对象是League\Uri
- 增值税率:内置
- 增值税号:内置
支持的功能
你喜欢这个库吗?
留下 ★
或者运行
composer global require symfony/thanks && composer thanks
以感谢你当前项目中使用的所有库,包括这个!