Datum umrechnen in timestamp?

Suchfunktion

Erfahrenes Mitglied
Hi!

Ich habe mehrere Daten in folgender Formatierung:
20.10.2006 15:11
TT.MM.YYYY HH:MM


Wie bekomme ich daraus einen timestamp?
Ich habe es mit
PHP:
<?php
$foo = strtotime("20.10.2006 15:11");
?>
versucht, aber da bekomme ich dann nur -1 (minus Eins) ausgegeben.

Ich bekomme es einfach nicht hin :(
 
Also ich bekomme damit einen brauchbaren Wert:
PHP:
var_dump( strtotime("20.10.2006 15:11") );
 
Wenn ich
PHP:
var_dump( strtotime("20.10.2006 15:11") );
ausfuehre, wird mir folgendes ausgegeben:
PHP:
int(-1)

Irgendwas stimmt da doch nicht. o.O
 
Hallo!

Warum es bei Gumbo funktioniert, kann ich nicht nachvollziehen.
Denn:
php.net hat gesagt.:
strtotime — Wandelt ein beliebiges Datum (englisches Format) in einen UNIX-Zeitstempel (Timestamp) um.
Demnach brauchst Du ein Datum in dieser Form:
PHP:
var_dump( strtotime("2006-10-20 15:11") );
Da bei Dir das Datum aber schon im deutschen Format vorgegeben ist, musst Du dieses zerlegen und in der richtigen Reihenfolge wieder zusammensetzen.

Ob Du nun beim umwandeln in einen Timestamp strtotime()
PHP:
<?php
$quelle   = "20.10.2006 15:11";
$getrennt = explode(" ", $quelle);
$datum    = explode(".", $getrennt[0]);
$ergebnis = strtotime($datum[2]."-".$datum[1]."-".$datum[0]." ".$getrennt[1]);
 
echo $ergebnis;
?>
oder lieber mktime()
PHP:
<?php
$quelle   = "20.10.2006 15:11";
$getrennt = explode(" ", $quelle);
$datum    = explode(".", $getrennt[0]);
$uhrzeit  = explode(":", $getrennt[1]);
$ergebnis = mktime($uhrzeit[0], $uhrzeit[1], "0", $datum[1], $datum[0], $datum[2]);
 
echo $ergebnis;
?>
verwendest, bleibt Dir selbst überlassen.

Gruss Dr Dau
 
Zurück