Value Objects are small and immutable classes representing typed values usually implemented using PHP primitive types. However, objects can embed validation to ensure that your data is always valid without adding any check elsewhere in your code.
That's why you should ALWAYS use Value Objects rather than primitive types.
This package requires PHP 7.4+
Add it as Composer dependency:
$ composer require mediagone/common-typesAll value objects implement a common ValueObject interface and JsonSerializable.
Hash(abstract class)HashBcryptHashArgon2id
AgeCountCountryDateDateTimeUTCDuration
HexNameSlugTextTextMediumTitle
EmailAddressUrlUrlHostUrlPath
Common Types is licensed under MIT license. See LICENSE file.