19declare(strict_types=1);
42 private const string RFC7231 =
'D, d M Y H:i:s \G\M\T';
49 if ($from instanceof DateTimeImmutable) {
54 DateTimeInterface::ATOM,
55 DateTimeInterface::COOKIE,
56 DateTimeInterface::ISO8601,
57 DateTimeInterface::RFC822,
59 DateTimeInterface::RFC3339_EXTENDED
62 if (is_string($from)) {
63 foreach ($formats as $format) {
64 $res = DateTimeImmutable::createFromFormat($format, $from);
65 if (
$res instanceof DateTimeImmutable) {
71 if (is_int($from) || is_float($from)) {
72 return new DateTimeImmutable(
"@" . round($from));
76 sprintf(
'Value "%s" could not be transformed.', var_export($from,
true)),
trait DeriveInvokeFromTransform
trait DeriveApplyToFromTransform