insidesuki/valueobject
Composer 安装命令:
composer require insidesuki/valueobject
包简介
Common value objects
README 文档
README
Common ValueObjects. Complete doc: https://gitlab.com/insidesuki/valueobject
1- DateValue
Simple ValueObject to manage DateTime types.
- To create a new DateValue :
$startData = DateValue::create('31-10-2010');
- Exception on invalid date
> InvalidDateException
- Get Age
$date = DateValue::create('31-10-2010'); echo $date->age();
**2- DocumentNumber**
--
Spanish NIF/CIF/NIF. Support for Passport type(no validation available)
- Supported types:
enum DocumentType: string {
case nif = '10';
case passport = '20';
case nie = '60';
case cif = '90';
}
- To create a new DocumentNumber by DocumentType
```
// nif
$nif = DocumentNumber::createByType('90','Z3740746P');
On invalid number throws InvalidDocumentNumberException
On invalid documentType throws InvalidDocumentTypeException
- To create a new DocumentNumber without specify type
// number, documentType detected on execution time
$number = DocumentNumber::create('Z3740746P');
// to avoid validation, passport type returned
$numberWithoutValidatin = DocumentNumber::create('posduhsui',false);
- To change DocumentNumber with specify type
$nif->change('60','newNumber');
3- FullName
Name, lastname1,lastname2 Lastname2 is optional
// lastname2 is optional
$name = ' james ';
$lastname = ' bond ';
$lastname1 = ' ';
$fullName = FullNameValue::create($name,$lastname,$lastname1);
4- Gender
Generic Gender, admits empty string
- GenderTypes
enum GenderType:string
{
case Masculino = '1';
case Femenino = '2';
case Undefined = '';
}
- To create
// Female Gender::create('2'); // Male Gender::create('1'); // Undefined Gender::create('');
- Exceptions
> InvalidGenderTypeException
**5- EmailValue**
--
Email value object, admits empty string
- To create
// valid $email = EmailValue::create($emailString); // empty $email = EmailValue::createAllowEmpty(''');
- Exceptions
> InvalidEmailException
**6- PhoneNumberValue**
--
PhoneNumber value object, admits empty string
- To create
// valid $phone = PhoneValue::createPhone('987154362'); // empty $phoneEmpty = PhoneValue::createPhoneAllowEmpty('');
// movil $movil = PhoneValue::createMovilPhone('714652391'); // empty $movil = PhoneValue::createMovilPhoneAllowEmpty('714652391');
- Exceptions
> InvalidPhoneNumberException
> EmptyPhoneNumberException
**7- NivelEstudioValue**
--
FUNDAE nivel estudios
**8- CategoriaProfesionalValue**
--
FUNDAE categoria profesional.
**9- GrupoCotizacionValue**
--
FUNDAE grupo cotizacion
**10- CuentaCotizacionValue**
--
FUNDAE cuenta cotizacion
**11- TerrorismoValue**
--
FUNDAE afectados terrorismo.
**12- ViolenciaValue**
--
FUNDAE afectados violencia de genero
**14- DiscapacidadValue**
--
FUNDAE afectados discapacidad.
**15- Amount**
--
insidesuki/valueobject 适用场景与选型建议
insidesuki/valueobject 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 454 次下载、GitHub Stars 达 0, 最近一次更新时间为 2023 年 01 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 insidesuki/valueobject 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 insidesuki/valueobject 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 454
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 18
- 依赖项目数: 3
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-01-06