Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mktime i nierealne dane
Forum PHP.pl > Forum > PHP
Zajec
Chciałbym wyciągnąć znacznik czasu dla wczoraszego dnia o godzinie 0:0:0.

Problem tak banalny, że można go znaleźć nawet w manualu: http://pl.php.net/manual/pl/function.date.php
  1. <?php
  2. $ostatni_miesiac = mktime (0,0,0,date("m")-1,date("d"), date("Y"));
  3. ?>


Oczywiście wystarczy -1 umieścić przy dniu a nie miesiącu i gotowe.


Martwi mnie jednak sytuacja gdy trafimy na dzień/miesiąc od którego nie da się odjąć 1. Co gdy powyższy kod z manuala wykonamy w styczniu dowolnego roku? Czy php jest odporne na wszystkie takie przypadki i w razie potrzeby poratuje się zmianą roku?
kossa
Tak, tak samo jako od pierwszego dnia odejmiesz jeden to php zmieni miesiąc i wyswietli Tobie ostatni dzień miesiąca poprzedniego.

Łukasz

edit:
mktime jest cool :-) ostatnio dużo się tym bawiłem, a przy okazji to jak chcesz to sprawdzić to zmień sobie datę na serwerze (localhost)
Zajec
Cytat(kossa @ 13.09.2006, 00:50:05 ) *
Tak, tak samo jako od pierwszego dnia odejmiesz jeden to php zmieni miesiąc i wyswietli Tobie ostatni dzień miesiąca poprzedniego.
Dzięki bardzo za odpowiedź :-)



Cytat(kossa @ 13.09.2006, 00:50:05 ) *
mktime jest cool :-) ostatnio dużo się tym bawiłem, a przy okazji to jak chcesz to sprawdzić to zmień sobie datę na serwerze (localhost)
Już podzielam Twoją opinię ;-) Zmienić datę sobie mogłem, ale nie chciało mi się testować wszystkich możliwości (cofanie miesiąca, cofanie dnia przy odejmowaniu godziny, cofanie roku przy odejmowaniu miesiąca, cofanie roku i miesiąca przy odejmowaniu kilku dni w styczniu (....) ) W każdym razie dzięki smile.gif
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.