我的html页面中有一个输入字段,它从jQuery datepicker获得 Date 。
格式如下:
18/02/2017
我有一个MYSQL字段DATETIME
我需要将上面的日期插入到这个MYSQL字段中。
所以我尝试了这段代码:
$mysqlDate = date('Y-m-d H:i:s', strtotime($_POST['php_date']));
但$mysqlDate
的结果是:
1970-01-01 01:00:00
有人可以就此问题提出建议吗?
提前致谢。
答案 0 :(得分:2)
做一件事,
$mysqlDate = date('Y-m-d H:i:s', strtotime(str_replace("/","-",$_POST['php_date'])));
echo $mysqlDate;
试一试,
它应该有用。
<强> 注意: 通过查看各个组件之间的分隔符来消除m / d / y或d-m-y格式的日期:如果分隔符是斜杠(/),则假设为美国m / d / y;而如果分隔符是破折号( - )或点(。),则假定为欧洲d-m-y格式。但是,如果年份以两位数格式给出,而分隔符是短划线( - ,日期字符串被解析为y-m-d。
来源link。
你新关注的答案,
$mysqlDate = date('Y-m-d H:i:s', strtotime(str_replace("/","-",$_POST['php_date']).' + '.rand(30,60*60*24*3).' seconds'));
答案 1 :(得分:2)
您必须将发布日期转换为
YYYY-MM-DD
将其转换为日期时间之前的格式。
你可以做到
$date=$_POST['php_date'];
list($day,$month,$year)=explode('/', $date);
$date=$year.'-'.$month.'-'.$day;
然后使用$date
。