Próbuję wyświetlić wykres z HighChartspl mam spakowane generowanie serii do wyświetlenia. Posiadam serię sygnatur czasowych w bazie danych. Chcę wyświetlać różnicę między zdarzeniami, więc na Xaxis otrzymuję czas pomiędzy zdarzeniami (aktualny t2 - poprzedni t2) pl na Y Mam czas. Więc teraz chciałem użyć Date.parse, aby uzyskać sekundy, ale nic nie zwróciło. Czy używam niewłaściwej funkcji Date.parse? ponieważ po umieszczeniu numeru int wyświetla on linię płaską.
$i = 0;
foreach ($metingen as $index => $m) {
if($i != 0) $js .= ",";
$js .= "{name: "";
$js .= "Event time " . substr($m[0]["t1"],0,16);
$js .= "", data: [";
$j = 0;
foreach ($m as $ms) {
if($j != 0) $js .= ",";
$js .= Date.parse("2012-01-30 18:21:49")-
Date.parse("2012-01-30 18:21:47";//$ms["antaal"];
$j++;
}
$js .= "]}";
$i++;
}
zapytanie bazy danych zwraca czas w tym formacie:
t1 antaal t2
2012-01-30 18:21:41 | 0 | 2012-01-30 18:21:42
2012-01-30 18:21:41 | 1 | 2012-01-30 18:21:43
2012-01-30 18:21:41 | 2 | 2012-01-30 18:21:53
2012-01-30 18:21:41 | 3 | 2012-01-30 18:21:59
Odpowiedzi:
2 dla odpowiedzi № 1Po prostu dodaj T
var date = new Date(Date.parse("2012-01-30 18:21:49".replace(" ","T")))
i dla Safari dodaj Z:
var date = new Date(Date.parse("2012-01-30 18:21:49".replace(" ","T")+"Z"))
Lub mieć
t1 antaal t2
2012-01-30T18:21:41Z | 0 | 2012-01-30T18:21:42Z
2012-01-30T18:21:41Z | 1 | 2012-01-30T18:21:43Z
2012-01-30T18:21:41Z | 2 | 2012-01-30T18:21:53Z
2012-01-30T18:21:41Z | 3 | 2012-01-30T18:21:59Z
Jednak w Safari potrzebujesz trochę więcej
http://jsfiddle.net/mplungjan/QkasD/
Myślę też, że masz na myśli
$js .= "Date.parse("".$m1."")-Date.parse("".$m2."");";
lub podobne