Jahresdifferenz zwischen zwei Datumsangaben
Hallo,
ich hoffe Ihr könnt mir eine kurze Antwort geben, da mein PHP ist leider nicht gut genug, um die Beispiele zu verstehen die ich bei Google finde, wäre ich über eure Hilfe dankbar.
Ich habe ein Datum aus einer Datenbank und das aktuelle Datum. Das Datum in der Datenbank ist im Format wie unten $datum1 abgelegt.
Für eine Abfrage brächte ich die Differenz in Jahren, die einen Wert von 0,1,2,... entspricht.
Über eine Antwort würde ich mich freuen.
Viele Grüße
Nico
ich hoffe Ihr könnt mir eine kurze Antwort geben, da mein PHP ist leider nicht gut genug, um die Beispiele zu verstehen die ich bei Google finde, wäre ich über eure Hilfe dankbar.
Ich habe ein Datum aus einer Datenbank und das aktuelle Datum. Das Datum in der Datenbank ist im Format wie unten $datum1 abgelegt.
Für eine Abfrage brächte ich die Differenz in Jahren, die einen Wert von 0,1,2,... entspricht.
$datum1 = "01.01.2012";
$datum2 = date('d.m.Y');
Über eine Antwort würde ich mich freuen.
Viele Grüße
Nico
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 203248
Url: https://administrator.de/contentid/203248
Ausgedruckt am: 16.11.2024 um 05:11 Uhr
5 Kommentare
Neuester Kommentar
Hi simon-ni,
du wandelst das Datum mit strtotime in einen Zeitstempel um, und übergibst diesen als zweites Argument an date,
wobei der Formatstring in date nur das "Y" für die Jahreszahl enthält.
Gruß
Günni
PS.: Hier -> http://php.net/manual/de/index.php findest du zu allen Funktionen verständliche Beispiele
du wandelst das Datum mit strtotime in einen Zeitstempel um, und übergibst diesen als zweites Argument an date,
wobei der Formatstring in date nur das "Y" für die Jahreszahl enthält.
<?php
$jahr_alt = date("Y", strtotime("01.01.2002"));
$jahr_neu = date("Y");
$differenz = $jahr_neu - $jahr_alt;
echo $differenz;
?>
Gruß
Günni
PS.: Hier -> http://php.net/manual/de/index.php findest du zu allen Funktionen verständliche Beispiele
Hi Nico,
es gibt noch einen kleine Unterschied:
Differenz des Kalenderjahrs oder des laufenden Jahres bis auf den Tag genau. Letzteres ist z.B: für eine Altersangabe relevant.
Dann geht es darum das Jahr bis auf die Anzahl der Tage runter zu brechen. Mit den Tagen kannst du wieder rechnen.
Dazu verwendet man Befehle um Teile des Strings zu extrahieren.
%datum1:~0,2% liefert das Jahr zweistellig ab Position 0
date /t liefert genau das Format, das du benötigst.
Gruß
Netman
es gibt noch einen kleine Unterschied:
Differenz des Kalenderjahrs oder des laufenden Jahres bis auf den Tag genau. Letzteres ist z.B: für eine Altersangabe relevant.
Dann geht es darum das Jahr bis auf die Anzahl der Tage runter zu brechen. Mit den Tagen kannst du wieder rechnen.
Dazu verwendet man Befehle um Teile des Strings zu extrahieren.
%datum1:~0,2% liefert das Jahr zweistellig ab Position 0
date /t liefert genau das Format, das du benötigst.
Gruß
Netman
Hi simon-ni,
du speicherst mittels explode dein Datum als Array, und übergibst die Array-Elemente an mktime.
Gruß
Günni
du speicherst mittels explode dein Datum als Array, und übergibst die Array-Elemente an mktime.
<?php
$datum1 = "05.12.1961";
$geboren = explode('.', $datum1);
$jetzt = mktime(0,0,0,date("m"),date("d"),date("Y"));
$geburt = mktime(0,0,0,$geboren[1],$geboren,$geboren[2]);
$age = intval(($jetzt - $geburt) / (3600 * 24 * 365));
echo $age . " Jahre alt";
?>
Gruß
Günni