Download the PHP package wiz-develop/php-value-object without Composer
On this page you can find all versions of the php package wiz-develop/php-value-object. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download wiz-develop/php-value-object
More information about wiz-develop/php-value-object
Files in wiz-develop/php-value-object
Download wiz-develop/php-value-object
More information about wiz-develop/php-value-object
Files in wiz-develop/php-value-object
Vendor wiz-develop
Package php-value-object
Short Description 📦 The PHP Value Object library offers immutable, type-safe, and self-validating objects to model domain values using the Value Object pattern.
License MIT
Package php-value-object
Short Description 📦 The PHP Value Object library offers immutable, type-safe, and self-validating objects to model domain values using the Value Object pattern.
License MIT
Please rate this library. Is it a good library?
Informations about the package php-value-object
PHP Value Object
📦 The PHP Value Object library offers immutable, type-safe, and self-validating objects to model domain values using the Value Object pattern.
概要
このライブラリは、ドメイン駆動設計における値オブジェクトパターンを PHP で実装するためのツールセットを提供します。 値オブジェクトは以下の特性を持ちます:
- 不変性 - 一度作成された値オブジェクトは変更できません
- 自己検証 - 値オブジェクトは常に有効な状態を保証します
- 型安全性 - 厳格な型チェックにより、予期しない型の値が混入することを防ぎます
- 値による等価性 - 同じ値を持つオブジェクトは等価とみなされます
インストール
Composer を使用してインストールできます:
要件
- PHP 8.4 以上
主な機能
基本型
- Boolean - 真偽値を扱う値オブジェクト。自己検証機能を備え、
from
メソッドによる直接作成とtryFrom
メソッドによる検証付き作成をサポート。 - String - 文字列を扱う値オブジェクト。最小長・最大長の検証や正規表現による検証機能を持ち、以下の特殊タイプも提供:
- EmailAddress - メールアドレスを表現する値オブジェクト
- Ulid - ULIDを表現する値オブジェクト
- Number - 数値を扱う値オブジェクト:
- IntegerValue - 整数値を表現(最小値・最大値の範囲検証あり)
- PositiveIntegerValue - 正の整数を表現
- NegativeIntegerValue - 負の整数を表現
- DecimalValue - 少数値をBCMath\Number型で表現(高精度計算対応)
- PositiveDecimalValue - 正の少数値を表現
- NegativeDecimalValue - 負の少数値を表現
- DateTime - 日付と時刻を扱う値オブジェクト:
- LocalDate - 日付のみを表現(年月日)
- LocalTime - 時刻のみを表現(時分秒)
- LocalDateTime - 日付と時刻を組み合わせて表現
コレクション
- ArrayList - 順序付きリストコレクション。要素の追加、フィルタリング、マッピング、ソート、マージなどの操作をサポート。常に不変性を保ちながら新しいインスタンスを返す。
- Map - キーと値のペアを管理するマップコレクション。キーによる値の取得、追加、削除、フィルタリングなどの操作をサポート。常に不変性を保つ。
- Pair - キーと値のペアを表現する基本型。MapコレクションはPairの集合として実装されている。
- ValueObjectList - 値オブジェクトのコレクションを扱うための特別なArrayList。値オブジェクトの等価性に基づいた操作を提供。
その他
- Enum Value - 列挙型の値を安全に扱うためのファクトリと基底クラス。型安全な列挙値の作成と検証をサポート。
- Result 型 - WizDevelop\PhpMonadライブラリを活用したエラーハンドリングのための型。成功/失敗を表現し、エラーチェーンの構築を可能にする。
使用例
Boolean 値の作成と検証
String 値の作成と操作
Number 値の作成と演算
DateTime 値の作成と操作
コレクションの使用
拡張
既存の値オブジェクトを拡張して、独自のドメイン固有の値オブジェクトを作成できます:
ライセンス
MIT ライセンスの下で公開されています。詳細は LICENSE ファイルを参照してください。
All versions of php-value-object with dependencies
PHP Build Version
Package Version
Requires
php Version
>=8.4
The package wiz-develop/php-value-object contains the following files
Loading the files please wait ....