tessera-php / tessera-type-datetime
Tessera type: DateTime
Package info
github.com/tessera-php/tessera-type-datetime
pkg:composer/tessera-php/tessera-type-datetime
dev-main
2026-02-23 12:49 UTC
Requires
- php: 8.1 - 8.5
- tessera-php/tessera-core: dev-main
Requires (Dev)
- phpunit/phpunit: ^10.0
Provides
This package is auto-updated.
Last update: 2026-04-25 18:16:56 UTC
README
Тип datetime для Tessera.
Установка
composer require tessera-php/tessera-type-datetime
Использование
use Tessera\Type\Datetime\DatetimeType; use Tessera\Type\Datetime\DatetimeData; $type = new DatetimeType(); // Валидация $type->validate(new DateTimeImmutable()); // true $type->validate('2024-06-15 10:30:00'); // true $type->validate('2024-06-15T10:30:00Z'); // true $type->validate(1718438400); // true (unix timestamp) $type->validate('invalid'); // false // Нормализация $data = $type->normalize('2024-06-15 10:30:00'); echo $data->value->format('Y-m-d H:i:s'); // 2024-06-15 10:30:00 // DTO $data = new DatetimeData(new DateTimeImmutable('2024-06-15')); echo $data->value->format('Y-m-d'); // 2024-06-15
Принимаемые форматы
DateTimeInterface— объекты DateTime и DateTimeImmutablestring— строка даты/времени (парсинг через DateTimeImmutable)int— unix timestamp
Часовой пояс
Для строк без указания часового пояса используется date_default_timezone_get().
Контракт
provide: tessera-contract-type/datetime
Лицензия
MIT