23

私の目標は、タイムスタンプを MySQL から JavaScript の Date オブジェクトに効率的に変換することです。これは、MySQL タイムスタンプを PHP でフォーマットされた日付に変換する現在のスニペットです。

<?php
// formats timestamp into following format: 2009, 7, 30
$date =  date("Y, n, j", strtotime($row["date"]));
?>

$date次に、JavaScript Date オブジェクトを必要とする Google のチャート API を使用して、チャートにこの値を使用しています。

data.setValue(<?=$count;?>, 0, new Date(<?=$date;?>));

問題は、JavaScript の Date オブジェクトが月のインデックスを 0 で開始するため、出力が常に 1 か月前になることです。この問題に対処する最も効率的な方法は何ですか?

前もって感謝します!

4

3 に答える 3

19

Date コンストラクターに mm/dd/yyyy または yyyy/mm/dd 形式の日付を入力すると、次のように変換されます。

>>> new Date('7/30/2009');
Thu Jul 30 2009 00:00:00 GMT-0700 (Pacific Daylight Time)
>>> new Date('2009/7/30');
Thu Jul 30 2009 00:00:00 GMT-0700 (Pacific Daylight Time)
于 2009-07-30T18:41:59.403 に答える
14

1残念ながら、月の数からその余分な分を手動で差し引く必要があります。JS Date オブジェクトがめちゃくちゃです。

于 2009-07-30T18:41:15.787 に答える