Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie nr okreslonych dni w roku
Forum PHP.pl > Forum > PHP
pain3hp
Stoję przed zleceniem dla szkoły nauki jazdy, jedno z założeń jakie mam wykonać to dynamicznie kreowana informacja odnośnie startu najbliższych kursów. Szkoła ta rozpoczyna nowe kursy w pierwszy i trzeci wtorek w miesiącu czyli dla lutego będą to dni 2 oraz 16.
Wszystko ma się tworzyć dynamicznie czyli nie mogę rozwiązać tego tworząc tablicę i powstawiać jej numery dni z całego roku w których są kursy a następnie warunkami sprawdzać który jest najbliżej i wyświetlać ile dni pozostało. Czyli mój główny problem to dynamiczne uzyskanie numerów dni z całego roku które spełniają te warunki czyli są pierwszym lub trzecim wtorkiem w miesiącu, z resztą myślę że dam radę.

Nie potrzebuje gotowca a jedynie wskazówki gdyż tez jestem na etapie edukacji co za tym idzie staram się unikać "kopiuj/wklej"

Dzięki za każdy pomysł. Ja widze oczywiscie to tak z tymi numerami, jeśli ktoś widzi prostsze rozwiązanie to pisać smile.gif
Właściwie mając nr pierwszego wtorku wystarczy dodać 14 i mam trzeci....
pozdrawiam
redeemer
Poczytaj o http://php.net/manual/en/function.strtotime.php

Konkretniej wpis Leona F. w User Contributed Notes powinien Ci jakoś pomóc.
piotr94
ja proponuję popróbować z funkcją date(); i mktime();
pierwsze lecisz dni miesiąca od początku, i jak natrafisz na np. wtorek, do dodajesz 7 i masz kolejne wtorki miesiąca, jak licznik miesiąca Ci się "przekręci" to zaczynasz liczenie dla kolejnego miesiąca ;-)
redeemer
Cytat(piotr94 @ 23.01.2010, 19:20:39 ) *
ja proponuję popróbować z funkcją date(); i mktime();
pierwsze lecisz dni miesiąca od początku, i jak natrafisz na np. wtorek, do dodajesz 7 i masz kolejne wtorki miesiąca, jak licznik miesiąca Ci się "przekręci" to zaczynasz liczenie dla kolejnego miesiąca ;-)


Po co wymyślać coś od nowa? Poza tym Twoje rozwiązanie wydaje się nie być demonem szybkości smile.gif

Jak już pisałem, najlepszym IMHO wyjściem będzie skorzystać z strtotime()
  1. echo date("Y-m-d", strtotime('+0 week tue 2010-02')); // wyświetli 2010-02-02
  2. echo date("Y-m-d", strtotime('+2 week tue 2010-02')); // wyświetli 2010-02-16

piotr94
@up, racja, twoje rozwiązanie najlepsze winksmiley.jpg
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.