Florian Fiegel | 14.09.2009 14:38

    Platzhalter für die Formatierung von Datum und Uhrzeit

    Habari greift für die Formatierung von Datum und Uhrzeit auf die von PHP zurück. Dies ist mehr oder minder ein Standard und dennoch natürlich nicht jedem geläufig. Während die Zeitangaben zuvor oftmals im Theme formatiert wurden, lässt sich dies auch mit den Optionen zentral erledigen und unabhängig vom Theme einstellen. Zumindest wird dies spätestens mit der Version 0.7 weitestgehend auch von allen Themes so genutzt. Im folgenden findet sich eine Liste für die Platzhalter, damit jeder sich seine eigenen Formatierungen einfach zusammenstellen kann.

    Platzhalter für die Formatierung von Datum und Uhrzeit

    • a - amerik. Tageszeit, klein geschrieben ("am" oder "pm")
    • A - amerik. Tageszeit, groß geschrieben ("AM" oder "PM")
    • d - Tag des Monats, zwei Ziffern mit führenden Null (z.B. "05")
    • j - Tag des Monats ohne führenden Null ("1" bis "31")
    • D - Tag der Woche mit drei Buchstaben in englisch (z.B. "Mon")
    • l (kleines L) - Tag der Woche, ausgeschrieben ("Monday")
    • w - Tag der Woche, Ausgabe als Zahl ("0" für Sonntag)
    • F - Ausgeschriebener Monat (z.B. "December")
    • h - Stunde im 12-Stunden-Format mit führender Null ("01" bis "12")
    • H - Stunde im 24-Stunden-Format mit führender Null ("00" bis "23")
    • g - Stunde im 12-Stunden-Format ohne führende Null ("1" bis "12")
    • G - Stunde im 24-Stunden-Format ohne führende Null ("0" bis "23")
    • i - Minuten ("00" bis "59") L - Flag für Schalttjahr ("0" oder "1")
    • m - Monat mit führender Null ("01" bis "12)
    • n - Monat ohne führende Null ("1" bis "12)
    • M - Monat mit drei Buchstaben (z.B. "Dec")
    • s - Sekunden ("00" bis "59")
    • S - Suffix der engl. Ordnungszahlen (z. B. "st","nd")
    • t - Anzahl der Tage des Monats ("28" bis "31")
    • U - Sekunden seit Beginn der Unix-Epoche
    • Y - Jahr, vierstellige Ausgabe (z.B. "2001")
    • y - Jahr, zweistellige Ausgabe (z.B. "01")
    • z - Tag im Jahr ("0" bis "365")
    • Z - Offset der Zeitzone gegenüber GMT in Minuten (z.B. "-43 200")
    • B - Swatch-Internet-Zeit
    • I - Sommerzeit ("1" bei Sommerzeit, sonst "0")
    • L - Schaltjahr ("1" bei Schaltjahr, sonst "0")
    • T - Zeitzoneneinstellung des Servers (z.B. "CET" für "Central European Time")

    Quelle: phpbox.de


    4 Comments

    1. Guido Erlinger
      15.09.2009 8:42

      Nur wenn man den Namen des Wochentags (Montag, Dienstag, ...) oder des Monats mit ausgeben lassen möchte, macht er das bei mir immer in englisch. Ich habe es noch nicht geschafft, das auf Deutsch ausgeben zu lassen. Da hilft es auch nicht in den Optionen von Habari für "system locale" de, de_DE oder etwas anderes anzugeben.

      Hast Du das schon mal hinbekommen?


    2. Florian Fiegel
      15.09.2009 12:52

      Alternative ist hier glaube ich nur sich den Wochentag als Zahl ausgeben zu lassen und diese dann mit einem entsprechenden Wochentag zu setzen.


    3. Konzertheld
      13.11.2010 5:49

      Da steckt eine PHP-Funktion hinter, die keine Lokalisierung unterstützt. Wenn also Wörter wie Wochentage ausgegeben werden sollen, musst du dich da leider selber drum kümmern...


    4. Frido
      02.12.2010 20:49

      Ich bin heute auf dasselbe Problem gestoßen. Im Gegensatz zu Habari beachtet die PHP-Funktion strftime() die "system locale"-Einstellungen. Wenn man Arrays mit hinterlegten deutschen Namen vermeiden und trotzdem das Datum im deutschen Format "02 Dezember 2010" ausgeben will, gibt es eine Lösung in PHP: Man lässt das Habari-Datum als String zurückgeben, wandelt diesen mit strtotime() in einen Timestamp um und kann mit Hilfe dieses Timestamps die Funktion strftime() benutzen. Hier der Code:

      $timestring = $post->pubdate->text_format('{d} {M} {Y} {h}:{i}:{s} {O}');
      $timestamp = strtotime($timestamp);
      echo strftime('%d%B %Y', $time);

      Umständlich und nicht gerade schön, aber vielleicht hilft es jemandem.


    Einen Kommentar abgeben