非常难过,
我有一个文本输入字段,允许用户使用jquery的日期选择器和timepicker插件插入日期和时间。当用户关闭日历以插入日期时,它会将其输入文本字段10/13/2013 22:16
。如何使用php将其转换为适合数据库存储的mysql时间戳函数? 2013-10-13 22:16:00
谢谢!
答案 0 :(得分:2)
这是我弄清楚如何用PHP实现这一目标的唯一合理方式。
$Data = $_POST['date'];
$Data = explode("/", $Data);
$Month = $Data[0];
$Day = $Data[1];
$YearAndTime = explode(" ", $exp[2]);
$Year = $YearAndTime[0];
$T = explode(":", $YearAndTime[1]);
$Hour = $T[0];
$Minute = $T[1];
$timestamp = "{$Year}-{$Month}-{$Day} {$Hour}:{$Minute}:00";
答案 1 :(得分:1)
试试这个:
$('#datepicker').datepicker({ dateFormat: 'yy-mm-dd' });
答案 2 :(得分:1)
使用内置DateTime
类:
// Create a DateTime instance from a custom format
$format = 'm/d/Y H:i';
$date = '10/13/2013 22:16';
$time = DateTime::createFromFormat($format, $date);
// If the $time variable is false then it means
// that the input is not formatted correctly...
if ( ! $time) {
echo 'Input is not formatted correctly!';
} else {
echo 'Valid input: ', $time->format('r');
}
die;
答案 3 :(得分:1)
在PHP中尝试以下内容:
$date= date('Y-m-d H:i:s',strtotime( $_POST['date']));
答案 4 :(得分:0)
好吧,你试过php mktime()吗?
答案 5 :(得分:0)
如果您使用的是jquery UI datepicker,那么CIRCLE的回答是正确的。将datepicker格式更改为yy-mm-dd会将2014年9月4日变为2014-09-04,然后可以将其与存储在数据库中的时间戳进行成功比较。