[英]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.