| « Sprachreise nach England | Prefetching in Firefox abschalten » |
Falls jemand einmal in der Lage sein sollte, Daten in PHP "hübsch" ("Heute", "Gestern", "am 03.09.2006 um 13:30:42") darzustellen zu müssen/wollen, habe ich für denjenigen den passenden PHP-Code.
PHP:
<?php | |
date_default_timezone_set('Europe/Berlin'); // Für alle Fälle... | |
setlocale(LC_TIME, 'de_DE'); // für deutsche Wochentagsabkürzungen, bei Bedarf entspr. abändern | |
| |
function nicedate($timestamp = NULL) | |
{ | |
if ($timestamp === NULL) { | |
$timestamp = time(); | |
} | |
| |
if ($timestamp >= mktime(0, 0, 0) && $timestamp <= mktime(23, 59, 59)) { | |
// Bei Bedarf Datumsformat abändern, siehe auch die anderen zwei strftime()-Aufrufe. | |
return strftime('Heute um %H:%M:%S', $timestamp); | |
} elseif ($timestamp >= mktime(0, 0, 0, date('n'), date('j')-1) | |
&& $timestamp <= mktime(23, 59, 59, date('n'), date('j')-1)) { | |
return strftime('Gestern um %H:%M:%S', $timestamp); | |
} else { | |
return strftime('%a, %d.%m.%y, %H:%M:%S', $timestamp); | |
} | |
} | |
| |
echo nicedate()."\n"; // Aktuelles Datum | |
echo nicedate(mktime(13, 30, 00, date('n'), date('j')-1))."\n"; // Gestern | |
echo nicedate(mktime(10, 45, 23, 3, 1, 1999))."\n"; // Damals... | |
// Beispiel der Konvertierung eines Strings in einen Timestamp | |
// siehe auch http://www.php.net/manual/en/function.strtotime.php | |
echo nicedate(strtotime('Fri, 18 Jul 2008 14:12:06 GMT')); | |
?> |
Die Ausgabe sieht dann so aus:
Heute um 14:22:32
Gestern um 13:30:00
Mo, 01.03.99, 10:45:23
Gestern um 16:12:06