miras
10.07.2012, 17:14:26
Witam, mam 2 daty obydwie w postaci strtotime(); jedna data to jest początek a druga to jest koniec, dajmy na to pierwsza data to: 2012-06-10 15
(format Y-m-d H) a data końcowa to: 2012-06-13 14 - oczywiście jest to w strtotime, a ja muszę zrobić jakąś taką inteligentną pętle, która będzie mi wyświetlała date od początku do końca co godzinę,
czyli np. jak mamy start : 2012-06-10 15 to:
2012-06-10 16
2012-06-10 17
2012-06-10 18
2012-06-10 19
2012-06-10 20
2012-06-10 21
2012-06-10 22
2012-06-10 23
2012-06-10 24
2012-06-11 01
2012-06-11 02
itd..
Mam nadzieje, że rozumiecie o co chodzi - dzięki z góry! nie mam pojęcia jak się za to zabrać..
peter13135
10.07.2012, 18:28:28
Nie rozumiem co to znaczy "format strtotime()". strtotime po prostu przerabia datę w formacie stringu na uniksowany znacznik czasu.
Obie daty skonwertuj do uniksowego znacznika czasu. Zrób sobie pętle for, gdzie $i początkowe to uniksowy znacznik czasu pierwszej daty, $i zwiększaj o 60, dopóki $i < uniksowy znacznik czasu drugiej daty.
Wyświetlaj datę za pomocą funkcji date. Jako pierwszy parametetr podaj "format" tzn. może być to string "Y-m-d H:s" a jako drugi parametrt $i.
oczywiście zamiast $i może być cokolwiek innego, ale najczęściej jest $i, więc tak sobie napisałem.
miras
10.07.2012, 18:30:20
wszystko rozumiem - tylko dlaczego mam zwiększać o 60, przecież godzina w tym 'uniksowym formacie czasu' to 3600 ?
peter13135
10.07.2012, 18:32:46
Cóż, w przykładzie zwiększasz co minutę
miras
10.07.2012, 18:54:44
ok, teraz wszystko rozumiem, jakoś pomysłu mi brakowało - dzięki.
Jeszcze mi powiedz jak możesz czemu to się zapętla w nieskońcozność?
<?php
for( $x = $data1; $x < $data2; $x+3600 ) {
}
?>
Up, dobra poradziłem
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.