不正确的日期时间值 1292 拉拉维尔 5.7 仅从特定日期

我在问题和答案中看到了这个错误,但我的情况有点奇怪!


我正在使用拉拉维尔5.7与这些数据库设置:


        'mysql' => [

            'driver' => 'mysql',

            'host' => env('DB_HOST', '127.0.0.1'),

            'port' => env('DB_PORT', '3306'),

            'database' => env('DB_DATABASE', 'forge'),

            'username' => env('DB_USERNAME', 'forge'),

            'password' => env('DB_PASSWORD', ''),

            'unix_socket' => env('DB_SOCKET', ''),

            'charset' => 'utf8mb4',

            'collation' => 'utf8mb4_unicode_ci',

            'prefix' => '',

            'prefix_indexes' => true,

            'strict' => true,

            'engine' => null,

        ],


我的一个表记录具有用户出生日期的格式。timestamp


这工作正常,直到用户年龄小于 1969-02-22 00:00:00。这意味着 1970-02-22 00:00:00 是可以的,但第一个会导致错误!


如何解决此情况?


函数式编程
浏览 61回答 1
1回答

四季花海

你有Unix时间:它是自 Unix 时代以来经过的秒数,即 1970 年 1 月 1 日 00:00:00 UTC 的时间,如果必须保存之前的日期,请使用其他数据类型,如 或 。DATEDATETIMTE正如您可以在这里阅读的那样。
打开App,查看更多内容
随时随地看视频慕课网APP