Hallo
ich habe folgenden Funktionsaufruf
$datumStart = "2018-10-01"; $datumEnde = "2018-10-31"; $userMonatAusgabe = userMonat($mysqli, $object->user, $datumStart, $datumEnde);
Dafür benötige ich immer das Datum vom 01. bis ende. Ich weiß aber nie wie viele Tage ein Monat hat.
Schon einmal in den Datums- und Zeitfunktionen von PHP gestöbert? Die Funktion date
gibt alle nötigen Informationen über ein Datum und „seine Umgebung“ her. Dazu gehört mit dem Formatzeichen t
auch die Anzahl der Tage und damit der letzte Tag eines Monats.
# heute ist der 01.10.2018
# anstelle des optionalen Parameters für den Timestamp wird die aktuelle Zeit angesetzt
$anzahlTage = date('t'); // $anzahlTage = 31
# der letzte Donnerstag war der 25.09.2018
# für den optionalen Parameter wird dieses Datum (inklusive der Mittagszeit) explizit angegeben
$anzahlTage = date('t', mktime(12, 0, 0, 9, 25, 2018)); // $anzahlTage = 30
Dass der erste Tag eines Monats gleichbleibend mit 1
anzusetzen ist, sollte klar sein. Damit hast du alle notwendigen Informationen, um die Werte der Variablen $datumStart
und $datumEnde
sowohl für den aktuellen Monat als auch für jeden anderen Monat festzulegen.
Tschö, Auge
--
Eine Kerze stand [auf dem Abort] bereit, und der Almanach des vergangenen Jahres hing an einer Schnur. Die Herausgeber kannten ihre Leser und druckten den Almanach auf weiches, dünnes Papier.
Kleine freie Männer von Terry Pratchett
Eine Kerze stand [auf dem Abort] bereit, und der Almanach des vergangenen Jahres hing an einer Schnur. Die Herausgeber kannten ihre Leser und druckten den Almanach auf weiches, dünnes Papier.
Kleine freie Männer von Terry Pratchett