Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Miesiące, Może ktoś robił coś podobnego
NuLL
post
Post #1





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


Hi all :-)

Mam dwie daty w formacie timestampa. Jak pobrać wszystkie miesiące zawarte pomiędzy nimi. (IMG:http://forum.php.pl/style_emoticons/default/aarambo.gif) Łatwo by było, gdyby miesiące miały tą samą ilość dni - ale nie mają. Jakieś pomysły, sugestie...?

EDIt - juz prawie wykombinowalem tak wiec temat jest do skasowania.

BTW. Czemu nie mozna skasowac wlasnorecznie napisanego tematu ?

Ten post edytował NuLL 3.05.2005, 12:32:37
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bendi
post
Post #2





Grupa: Zarejestrowani
Postów: 401
Pomógł: 5
Dołączył: 14.09.2003
Skąd: Wrocław

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


Kod nospora bierze pod uwage tylko miesiace pomijajac lata, a oto moje rozwiazanie:
  1. <?
  2. $iTime1 = mktime( 0,0,0,12,3,2004 );
  3. $iTime2 = mktime( 0,0,0,3,1,2005 );
  4.  
  5. //sprowadzamy obie daty do pierwszego dnia miesiaca
  6. $iTime1 = mktime( 0,0,0,date('n',$iTime1),1,date('Y',$iTime1 ) );
  7. $iTime2 = mktime( 0,0,0,date('n',$iTime2),1,date('Y',$iTime2 ) );
  8.  
  9. //wybieramy mniejsza z nich i inicjujemy zmienna tymczasowa przechowujaca czas
  10. $iTempDate = min( $iTime1, $iTime2 );
  11.  
  12. //zachowujemy pierwotna ilosc miesiecy oraz ta potrzebna w petli
  13. $iMonthStart = $iMonthCurrent = date( 'n', $iTempDate );
  14.  
  15. //przechodzimy przez daty dopoki wieksza z dat jest wieksza od aktualnej
  16. while( max( $iTime1, $iTime2 ) > $iTempDate ) {
  17. //no i tworzymy aktualna date zwiekszajac licznik miesiaca (wazne - rok musi pozostac staly !!)
  18. $iTempDate = mktime( 0,0,0,++$iMonthCurrent,1,date( 'Y', min( $iTime1, $iTime2 ) ) );
  19. }
  20. echo $iMonthCurrent-$iMonthStart, ' ', date( 'd-m-Y', $iTempDate );
  21. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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: 15.10.2025 - 04:11