gpt4 book ai didi

php - date( ) 返回 1970-01-01

转载 作者:行者123 更新时间:2023-12-02 04:56:54 24 4
gpt4 key购买 nike

   $date  = date("Y-m-d",strtotime($startdate));

与以下内容

 $query = "INSERT INTO complete_table ( name, startdate) VALUES ('$_POST[name]', '$date')";

不幸的是,无论输入是什么,我都在数据库中注册了 1970-01-01。知道我做错了什么吗?非常感谢您的帮助。

最佳答案

当您从 date() 返回 1970-01-01 时,这意味着时间戳不正确。那个日期是 UNIX epoch .

当涉及到 Javascript(在本例中为日期选择器)时,您应该始终确保您得到的实际上是您期望的。简单地通过 strtotime() 传递它会导致像你在这里遇到的问题。

处理日期的一种好方法是使用 datetime延期。它有一个静态方法,DateTime::createFromFormat ,这将使您可以使用任何格式解析任何日期:

// The value from the datepicker
$dpValue = '12/30/2013';

// Parse a date using a user-defined format
$date = DateTime::createFromFormat('d/m/Y', $dpValue);

// If the above returns false then the date
// is not formatted correctly
if ($date === false) {
header('HTTP/1.0 400 Bad Request');
die('Invalid date from datepicker!')
}

// Using the parsed date we can create a
// new one with a formatting of out choosing
$forSQL = $date->format('Y-m-d');

// ...

关于php - date( ) 返回 1970-01-01,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20831049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com