[php] datum zerlegen und dann zu timestamp

vquicksilver

Mitglied
Ich hätte mal eine Frage hierzu.. und zwar habe ich eine die Funktion um ein datum zu zerlegen. Ich habe nun auch noch vor das datum wieder in ein Timestamp umzuwandeln. Ich brauche das getrennt weil ich von einem Js kalender ein Datum zerlegen will und das nachher in ein Timestamp umwandeln will. Aber irgendwie will das umwandeln in ein Timestamp nicht funktionieren. Sieht vielleicht jemand ein Fehler?

PHP:
function datumsplit($datum)
{
/*
$matches[0][0] => Tag
$matches[0][1] => Monat
$matches[0][2] => Jahr
$matches[0][3] => Stunde
$matches[0][4] => Minute
*/

// Die Funktion Zerlegt das Datum und Die uhrzeit in ihre bestandteile
	/* Der reguläre Ausdruck. */
    $preg = '/[\d]{2,4}/';

    /* Das Ergebnis-Array */
    $matches = array();
    
    /* Regulären Ausdruck anwenden. */
    preg_match_all($preg, $datum, $matches);
  
    /* Das Ergebnis übergeben. */
return $matches;
}


function date_to_timestamp($datum) {
$datumsplit = datumsplit($datum);
$timestamp = mktime($datumsplit[0][3],$datumsplit[0][4],"00",$datumsplit[0][1],$datumsplit[0][0],$datumsplit[0][2]);
return $timestamp;
}

Dann:

echo date_to_timestamp("23.03.2006 04:03");
Ergebnis: 1143082980

echo date_to_timestamp("01.03.2006 09:03");
Ergebnis: 1143082980

ich kann machen was ich will.. ich bekomme immer 1143082980 heraus... aber per phpmyadmin generiert kommt dort ein ganz anderer Timestamp raus:(

Vielen Dank
 
probier mal das hier :

$timestamp= mktime($datumsplit[3],$datumsplit[4],"00",$datumsplit[1],$datumsplit[0],$datumsplit[2]);
 
Probier mal folgende Funktion:
PHP:
function date_to_timestamp( $string )
{
	if( !preg_match('/([0-9]{2})\.([0-9]{2})\.([0-9]{4}) ([0-9]{2}):([0-9]{2})/', $string, $match) || !checkdate($match[2], $match[1], $match[3]) ) {
		return false;
	}
	return mktime($match[4],$match[5], 0, $match[2],$match1], $match[3]);
}
 
Zurück