簡體   English   中英

PHP-將日期轉換為UTC日期

[英]PHP - Convert Date to UTC Date

我有一個以YYYY-MM-DD形式從MySQL數據庫中提取的日期。

現在,我有一些需要這樣的日期的JavaScript:

data: [
            [Date.UTC(2010, 0, 1), 29.9], 
            [Date.UTC(2010, 2, 1), 71.5], 
            [Date.UTC(2010, 3, 1), 106.4]
        ]

所以我認為我可以做以下事情:

while($row = mysql_fetch_array($sql)){  
      $thedate = explode('-', $row['date']); //$row['date'] = YYYY-MM-DD      
      $str .= '[Date.UTC(' . $thedate[0].','.$thedate[1].','.$thedate[2].'), '.$row['answer'].'],';
      $i++;
    }

然后在變量data使用AJAX請求在瀏覽器端簡單地捕獲它,即可得到:

data: [data]

提醒數據內容時,我注意到我在8月22日至23日收到以下內容:

[Date.UTC(2011, 08, 22), 55], [Date.UTC(2011, 08, 23), 65]

當我需要的是

[Date.UTC(2011, 7, 22), 55], [Date.UTC(2011, 7, 22), 65]

有人可以告訴我如何將從數據庫關系中提取的日期轉換為正確的格式。

YYYY

那是哪種格式? 無論如何,請使用DateTime::createFromFormat解析日期,然后您可以按自己的DateTime::createFromFormat日期。

例:

while($row = mysql_fetch_array($sql)){  
    $Date = DateTime::createFromFormat( 'Y-m-d', $row['date'] ); 
    $str .= '[Date.UTC(' . $Date->format('Y') . ', ';
    $str .= $Date->format('n') - 1 . ', ';
    $str .= $Date->format('j') . '), ' . $row['answer'] . '],';
}

順便看看json_encode http://php.net/manual/en/function.json-encode.php

while($row = mysql_fetch_array($sql)){ 
  $timestamp = strtotime($row['date']); 
  $str .= '[Date.UTC(' . date('Y', $timestamp). ', ';
    $str .= date('n', $timestamp) - 1 . ', ';
    $str .= date('j', $timestamp) . '), ' . $row['answer'] . '],';
}

關於DateTime-這是一個很棒的類,但僅適用於pphp> = 5.2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM