私は PHP が初めてで、読んでいる本から、2038 年問題があることに気付きました。これは、タイムスタンプを使用すると、到達できる最も遠い日付が 2038 年 1 月 19 日になることを示しています。この制約を克服するために、dateTimeオブジェクトを使用することをお勧めします。ただし、PHP でテストすると (PHP 5.6.6 で MAMP を使用)、より大きな日付でタイムスタンプを使用しても、完全に機能するようです。
たとえば、次のコードに注意してください。
<?php
$date1_timestamp = mktime(13, 30, 0, 1, 12, 2049);
$date1 = date('Y-m-d H:i:s', $date1_timestamp);
echo $date1; // output: 2049-01-12 13:30:00
?>
PHP サーバーが 2038 年問題に悩まされないのはなぜですか? なぜ正しい値を出力できるのですか?タイムスタンプはそれほど大きな値を保持できませんよね?