mediagone/common-types

A collection of Value Objects you should (always) use instead of primitive types!


Keywords
type, ddd, value objects, clean-code, types, value-objects
License
MIT

Documentation

Common Types

Latest Version on Packagist Total Downloads Software License

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.

Installation

This package requires PHP 7.4+

Add it as Composer dependency:

$ composer require mediagone/common-types

List of available Value Objects

All value objects implement a common ValueObject interface and JsonSerializable.

Crypto

  • Hash (abstract class)
  • HashBcrypt
  • HashArgon2id

System

  • Age
  • Count
  • Country
  • Date
  • DateTimeUTC
  • Duration

Text

  • Hex
  • Name
  • Slug
  • Text
  • TextMedium
  • Title

Web

  • EmailAddress
  • Url
  • UrlHost
  • UrlPath

License

Common Types is licensed under MIT license. See LICENSE file.