Hallo!
Ich habe hier eine funktion die mir die Zeitdifferenz ausgibt. Das Datumsformat ist tt.mm.jjjj
Ich möchte jetzt, dass ich auch einen "- " als trennzeichen verwenden kann, also tt-mm-jjjj allerdings bekomme ich das nicht hin. Ich habe versuch mit strlen(); das dritte Zeichen zu ermitteln, um dann mit einer if-else abfrage das "explode-trennzeichen" zu ändern, aber irgendwie funtioniert das nicht.
So... ich habs jetzt mit strpos(); gelöst, allerdings scheint mir diese Lösung nicht besonders elegant zu sein. Gibt es da vielleicht einen besseren Weg?
Ich habe hier eine funktion die mir die Zeitdifferenz ausgibt. Das Datumsformat ist tt.mm.jjjj
Ich möchte jetzt, dass ich auch einen "- " als trennzeichen verwenden kann, also tt-mm-jjjj allerdings bekomme ich das nicht hin. Ich habe versuch mit strlen(); das dritte Zeichen zu ermitteln, um dann mit einer if-else abfrage das "explode-trennzeichen" zu ändern, aber irgendwie funtioniert das nicht.
PHP-Code:
<?php
function zeitdifferenz($datum)
{
$datum_array = explode(".",$datum);
$tag= $datum_array[0];
$monat = $datum_array[1];
$jahr = $datum_array[2];
# ist Datum korrekt??
$erlaubt = checkdate($monat,$tag,$jahr);
if ($erlaubt == true)
{
$stamp_heute=mktime();
$stamp_past=mktime(0,0,0,$monat,$tag,$jahr);
$zeit_diff['sekunden'] =$stamp_heute-$stamp_past;
$zeit_diff['wochen']= floor($zeit_diff['sekunden']/604800);
$zeit_diff['tage'] = floor($zeit_diff['sekunden']/(3600*24));
$zeit_diff['stunden']= floor($zeit_diff['sekunden']/3600);
return $zeit_diff;
}
else
{
return false;
}
}
$zeit_diff = zeitdifferenz("14.04.2006");
if ($zeit_diff != false)
{
echo "Es sind {$zeit_diff['tage']} Tage<br>";
echo "Es sind {$zeit_diff['wochen']} Wochen<br>";
echo "Es sind {$zeit_diff['stunden']} Stunden vergangen!<br>";
if ($zeit_diff['tage'] < 3)
{
echo "Eintrag ist neu!";
}
else
{
echo "Eintrag ist alt!";
}
}
else
{
echo "Datum ist nicht korrekt!";
}
?>
PHP-Code:
$test =strpos($datum,".",0);
if ($test == false)
{
$datum_array =explode("-",$datum);
}
else
{
$datum_array =explode(".",$datum);
}
Kommentar