我在$_POST['start']
中获得5/10/2014 18:12:22
日期时间,在$_POST['end']
中获得19/10/2014 18:12:22
日期时间。关于使用代码
if(isset($_POST['start'])) if(!empty($_POST['start'])) $start1=mysqli_real_escape_string($con,$_POST['start']);
if(isset($_POST['end'])) if(!empty($_POST['end'])) $end1=mysqli_real_escape_string($con,$_POST['end']);
echo $start = date('Y-m-d H:i:s', strtotime($start1)); //returns 2014-05-10 18:12:22
echo '<br>';
echo $end = date('Y-m-d H:i:s', strtotime($end1)); //returns 1970-01-01 00:00:00
die();
我不知道我做错了什么,所以请任何帮助都将不胜感激。
如果表中的相关列是DATETIME/TIMESTAMP
,您也可以使用DateTime
类在插入之前重新格式化这些日期:
简单示例:
$start1 = '5/10/2014 18:12:22'; // $_POST['start'];
$end1 = '19/10/2014 18:12:22'; // $_POST['end'];
$start_date = DateTime::createFromFormat($start, 'd/m/Y H:i:s'); // feed the proper format so that it will be recognized.
$end_date = DateTime::createFromFormat($end1, 'd/m/Y H:i:s');
$start = $start_date->format('Y-m-d H:i:s');
$end = $end_date->format('Y-m-d H:i:s');