繁体   English   中英

日期时间选择器的strtotime

[英]strtotime with datetimepicker

我正在使用datetimepicker jquery插件,并具有以下代码来显示它:

var dateToday = new Date();
$('#post_date_picker').datetimepicker({
    minDate: dateToday,
    timeFormat: 'hh:mm p z',
    timezoneList: [ 
        { value: -300, label: 'Eastern'}, 
        { value: -360, label: 'Central' }, 
        { value: -420, label: 'Mountain' }, 
        { value: -480, label: 'Pacific' } 
    ]
});

由于我以12小时而不是24小时格式显示它,并且如果服务器时间已经是PM,则使用最小日期,因此我可以选择时间并将其输出,如05/27/2015 08:50 p -0500

然后,我执行以下代码来准备将日期插入数据库中:

$date_time = strtotime($_POST['post_date']);
$post_date = date('Y-m-d H:i:s', $date_time);

问题是strtotime不能为PM重新整理p ,而是基本上在12小时之前插入日期。 我怎样才能做到这一点?

设置timeFormat:'hh:mm tt z'

在php中使用date_create和date_format($ date_time,'Ymd h:i:sA')

查看两者之间的区别(strtotime / date_create)。

// method using date_create

//$date=$_POST['post_date'];

$date='05/27/2015 08:50 p -0500';

$date_time=date_create($date);

$post_date=date_format($date_time,'Y-m-d H:i:s'); 

echo $post_date."<br>";//outputs 2015-05-27 08:50:00


//method using strtotime

$date_time = strtotime($date);

$post_date = date('Y-m-d H:i:s', $date_time);

echo $post_date;//outputs 2015-05-27 13:50:00

strtotime可以使用许多字符串参数,可能是当您将日期作为'05 / 27/2015 08:50 p -0500'传递时,发生了一些冲突,导致错误的时间解释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM