Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Date w strtotime + pętla., Jak wyżej.
miras
post
Post #1





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


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ć..
Go to the top of the page
+Quote Post
peter13135
post
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
miras
post
Post #3





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


wszystko rozumiem - tylko dlaczego mam zwiększać o 60, przecież godzina w tym 'uniksowym formacie czasu' to 3600 ?
Go to the top of the page
+Quote Post
peter13135
post
Post #4





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cóż, w przykładzie zwiększasz co minutę (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
miras
post
Post #5





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


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ść?

  1. <?php
  2.  
  3. $data1=strtotime("2012-06-10 21:00:00");
  4. $data2=strtotime("2012-06-14 14:00:00");
  5.  
  6. for( $x = $data1; $x < $data2; $x+3600 ) {
  7.  
  8. echo date("Y-m-d H:i", $x);
  9. echo "<br>";
  10.  
  11. }
  12.  
  13. ?>


Up, dobra poradziłem
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.12.2025 - 15:38