PHP mysqli从字符串插入日期

时间:2014-07-30 03:55:08

标签: php date mysqli

我厌倦了那些日期的东西。 这是我尝试的:

$string         = '24/10/1985';
$bday           = explode('/', $string);
$insertbday     = $bday[2] . '-' . $bday[1] . '-' . $bday[0];
$insertbday     = date("Y-m-d", $insertbday);
mysqli_query($con, "INSERT INTO user (bday) VALUES ($insertbday)");

但是那时候还有。怎么做对了?

3 个答案:

答案 0 :(得分:4)

date的第二个参数是时间戳。使用strtotime()转换$insertbday

更改此行:

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

为:

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

更新

另外,在$insertbday周围添加单引号以查询:

mysqli_query($con, "INSERT INTO user (bday) VALUES ('$insertbday')");

答案 1 :(得分:1)

你应该试试这个

$string         = '24/10/1985';
$bday           = strtotime($string);
$insertbday     = date("Y-m-d", $bday);
mysqli_query($con, "INSERT INTO user (bday) VALUES ($insertbday)");

答案 2 :(得分:0)

date()需要一个unix时间戳... 而且我认为你把它作为一个字符串传递给它。

你应该试试这个:

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

strtotime()功能除了您可以使用Datetime object

进行尝试
$NewBday= new DateTime($insertbday);
$NewBday= date( 'Y-m-d H:i:s', $NewBday);