phpbar.de logo

Mailinglisten-Archive

[php] Datum mit ereg erkennen

[php] Datum mit ereg erkennen

Marcus Winter marcus at mdash.de
Mon Aug 27 10:33:34 CEST 2007


Hallo Andre,

In der zweiten ereg-Abfrage wird ein falscher Teil des Datums erkannt 
"20" "07" (aus "2007") und "08".
Man könnte noch als Bedingung setzen, daß zwischen den ersten 
Zahlenpaaren ein Trenner sein muss.
Oder man schreibt das etwas um:

$date = "2007-08-27";

// "englisches" Format
if (ereg ("([0-9]{4}).([0-9]{1,2}).([0-9]{1,2})", $date, $regs)) {
      $db_date = "$regs[1]-$regs[2]-$regs[3]";
}
// "deutsche" Formate
elseif (ereg ("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})", $date, $regs)) {
    $db_date = "$regs[3]-$regs[2]-$regs[1]";
}
elseif (ereg ("([0-9]{1,2}).([0-9]{1,2}).([0-9]{2})", $date, $regs)) {
    $db_date = "20$regs[3]-$regs[2]-$regs[1]";
}

else {
    // falsches Format
}
       
echo "Datum Neu: ".$db_date;


viele Grüße,

Marcus
 

php::bar PHP Wiki   -   Listenarchive