Seite 1 von 1

Anzahl der Tage des aktuellen Jahres bis heute berechnen ?!?

Verfasst: 15.04.2005 11:51
von tschekowski
Hi,

Ich würde gerne die Anzahl der Tage des aktuellen Jahres bis heute berechnen. Dazu muss man meines Wissens nach die funktion "date" verwenden - weiß aber leider nicht genau wie man die in diesem Fall anwendet...

Verfasst: 15.04.2005 12:47
von mad-manne
erstmal kein Code, sondern ein Vorschlag für den Algorithmus :P
  • Aktuelles Jahr ermitteln
  • Aktuelles Datum ermitteln und in $akt_datum speichern
  • $jahres_anfang auf 01.Januar.aktuelles_Jahr setzen
  • $tag_im_jahr = $akt_datum - $jahres_anfang
Gruss,
Manne.

Verfasst: 15.04.2005 12:54
von tschekowski
für die berechnung der tage des vormonats hab ich das mal gemacht:

Code: Alles auswählen

$tage=date('t', strtotime('-1 month'));
darüber müsste es einfacher gehen - weiß aber nicht genau wie...

Verfasst: 15.04.2005 13:04
von mad-manne
es gibt bestimmt eine Bibliothek für solche Datumsgeschichten ...
... anyway, so habe ich es jetzt gelöst:

Code: Alles auswählen

	$aktuelles_jahr = intval(date("Y"));
	$aktueller_monat = intval(date("n"));
	$aktueller_tag = intval(date("j"));

	$vorheriges_jahr = $aktuelles_jahr - 1;
		
	$vorjahres_ende = mktime(12, 0, 0, 12, 31, $vorheriges_jahr);
	$aktuelles_datum = mktime(12, 0, 0, $aktueller_monat, $aktueller_tag, $aktuelles_jahr);

	$tag_im_jahr = intval(($aktuelles_datum - $vorjahres_ende) / 86400);

Fragen zum Code? immerzu :P

Gruss,
Manne.

[EDIT: Der erste Codeschnipsel war nicht ganz ausgereift .. deshalb nochmal geändert! /EDIT]

Verfasst: 15.04.2005 13:32
von tschekowski
jap das funzt - vieeeeeeeelen dank!!!

Verfasst: 15.04.2005 13:39
von mad-manne
tschekowski hat geschrieben:jap das funzt - vieeeeeeeelen dank!!!
Haste auch verstanden, wie es geht?

@ andere Coder: Wäre definitiv gespannt ob jemand eine schlankere Version für die Lösung dieser Aufgabe parat hätte :roll:

Gruss,
Manne.

Verfasst: 15.04.2005 13:47
von sonic-ac
Hi,

versteh das nicht so ganz, eigentlich sollte das doch einfach mit

Code: Alles auswählen

$tag_im_jahr = date("z");
gehen ?!? :roll:

http://www.php.net/manual/de/function.date.php

Verfasst: 15.04.2005 13:54
von mad-manne
sonic-ac hat geschrieben:Hi,

versteh das nicht so ganz, eigentlich sollte das doch einfach mit

Code: Alles auswählen

$tag_im_jahr = date("z");
gehen ?!? :roll:
Ich wusste es ... :D
Tja ich habe selten mit den datumsfunktionen zu tun, und leider ist der Parameter z in meinem PHP-Buch auf die nächste Seite "gerutscht" Deshalb übersehen :-?

Wie auch immer: Viele Wege führen nach Rom, aber ich denke deine Variante ist die schnellere.

Gruss,
Manne.