Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Dodawanie do tablicy wszystkich dat z przedziału
Forum PHP.pl > Forum > Przedszkole
Rokodon
Hej! Jestem tutaj nowy, ale mam pewne doświadczenie w PHP.
Napotkałem jednak problem, otóż zapisuję w bazie danych dwie daty: początkową oraz końcową. Chciałbym teraz wybrać wszystkie daty z ich przedziału i dodać do jednej tablicy. Zupełnie nie mam pojęcia jak to zrobić sad.gif Będę bardzo wdzięczny za pomoc smile.gif

Przykład:
Data początkowa: 2013-12-24
Data końcowa: 2013-12-27

Chciałbym aby w tablicy znalazły się daty: 24,25,26,27 grudnia 2013 roku.
xbigos
Spróbuj instrukcji for dodaj jakiegoś if zeby sprawdzić i na pewno bedzie działać. polecam manuala. rozwiązań jest co najmniej kilka.
drPayton
sekunda z google:
http://www.rarst.net/script/php-date-range/

A możesz tez pokombinować z wbudowaną klasą "DatePeriod"

  1. <?php
  2.  
  3. $start = DateTime::createFromFormat("Y-m-d H:i:s","2013-12-24 00:00:00");
  4. $end = DateTime::createFromFormat("Y-m-d H:i:s","2013-12-27 23:59:59");
  5. $interval = new DateInterval("P1D"); // 1 dzień
  6.  
  7. $period = new DatePeriod($start, $interval, $end);
  8. foreach($period as $date){
  9. echo $date->format("Y-m-d H:i:s") . "\n";
  10. }



edit:
@down: Piszę na tym forum ostatnio raz na kilka miesięcy, więc mogę gotowca podać ;P
xbigos
drPayton no dobra powiem to.wink.gif Bardziej eleganckie rozwiązanie. ale jakoś nie widzę sensu korzystania z gotowca;) skoro metoda jest tak prosta, że przy chwili dobrej woli śmiało można samemu to rozwiązać. Wystarczy pomyślećbiggrin.gif a obstawiam 2:1 że OOP nie jest używane przez Rokodona w tym rozwiązaniu:P
Rokodon
xbigos -> To że for i if to ja się domyślam tongue.gif Napisanie własnego rozwiązania zajęło by zapewne sporo linijek i czasu, ponieważ nie znam się na PHP bardzo dobrze. Jeśli chodzi o OOP to nie używam, PHP nie znam na tyle dobrze co C++ sad.gif
drPayton -> Dzięki! Próbowałem dwie metody, ale ta pierwsza ( z linka ) znacznie bardziej mi pasuje smile.gif Po paru modyfikacjach tej funkcji wszystko działa jak należy.

Wielkie dzięki!
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.