@ 2021-10-01T17:21:22Z <?php
$datetime1 = new \DateTimeImmutable('9999-01-02 15:00:00.000000', new \DateTimeZone('UTC'));
try {
$datetime2 = $datetime1->add(new \DateInterval('P1Y'));
echo $datetime2->format('Y-m-d H:i:s.u') . \PHP_EOL;
} catch (\Throwable $e) {
echo 'exception' . \PHP_EOL;
}
$datetime3 = \DateTimeImmutable::createFromFormat('Y-m-d H:i:s.u', $datetime2->format('Y-m-d H:i:s.u'), new \DateTimeZone('UTC'));
if ($datetime3 !== false) {
echo $datetime3->format('Y-m-d H:i:s.u') . \PHP_EOL;
} else {
echo 'false' . \PHP_EOL;
}
try {
$datetime4 = new \DateTimeImmutable($datetime2->format('Y-m-d H:i:s.u'), new \DateTimeZone('UTC'));
echo $datetime4->format('Y-m-d H:i:s.u') . \PHP_EOL;
} catch (\Throwable $e) {
echo 'exception' . \PHP_EOL;
}
// Workaround with fake year
try {
$datetime5 = new \DateTimeImmutable($datetime2->format('1234-m-d H:i:s.u'), new \DateTimeZone('UTC'));
$datetime5 = $datetime5->setDate((int)$datetime2->format("Y"), (int)$datetime2->format("n"), (int)$datetime2->format("j"));
echo $datetime5->format('Y-m-d H:i:s.u') . \PHP_EOL;
} catch (\Throwable $e) {
echo 'exception' . \PHP_EOL;
}
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.28 , 8.2.0 - 8.2.18 , 8.3.0 - 8.3.4 , 8.3.6 10000-01-02 15:00:00.000000
false
exception
10000-01-02 15:00:00.000000
Output for 8.3.5 Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
10000-01-02 15:00:00.000000
false
exception
10000-01-02 15:00:00.000000
preferences:dark mode live preview
174.96 ms | 402 KiB | 156 Q