簡體   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