[Gelöst] CGcalendar: Monat ohne führende 0

Hilfe zu Modulen und Tags
Post Reply
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

[Gelöst] CGcalendar: Monat ohne führende 0

Post by antiheld2000 »

Hi,

bin ich blind oder ist es von Haus aus nicht möglich, sich den Monat ohne führende Null ausgeben zu lassen?
{$event.event_date_start|date_format:"%m"} ergibt ja den Monat mit führender 0. Laut Manual gibt es das auch nicht strftime oder in ich blind? Hat jemand einen Tipp für mich, wie ich die führende 0 wegbekomme?

Dank und Gruß
anti
Last edited by antiheld2000 on Fri May 07, 2010 12:06 pm, edited 1 time in total.
cyberman

Re: CGcalendar: Monat ohne führende 0

Post by cyberman »

Probier mal

Code: Select all

{$event.event_date_start|date_format:"%m"|replace:'0':''}
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: CGcalendar: Monat ohne führende 0

Post by antiheld2000 »

das hab ich auch schon gedacht, jedoch wird dann aus der 10 eine 1…
cyberman

Re: CGcalendar: Monat ohne führende 0

Post by cyberman »

OK, neuer Versuch

Code: Select all

{$event.event_date_start|date_format:"%-m"}
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: CGcalendar: Monat ohne führende 0

Post by antiheld2000 »

guter versuch, jedoch leider ohne wirkung. in der ausgabe erscheint -m
owr_bgld

Re: CGcalendar: Monat ohne führende 0

Post by owr_bgld »

bei date wird die führende Null mit "n" nicht angezeigt, mit "m" schon - bei strftime ists leider lt. Beschreibung so dass er eine neue Zeile macht.

Bei setlocal auf de_DE sollte er eigentlich die "deutsche" Schreibweise bevorzugen - also ohne führende Null anzeigen. Hier gibts ein Besipiel:

http://www.phpbox.de/php_befehle/strftime.php

Die für mich grundlegende Frage ist, ob die Zeit überhaupt irgendwo auf die lokale Einstellung setzt, oder ob er mit englischen Werten arbeitet. Und ob es was bringt, wenn man irgendwo vorher im Template das einfügt - also ein UDT und dann abruft:

Code: Select all

// UDT "localtime"
setlocale (LC_TIME, "de_DE");

// Tag im Template aufrufen
{localtime}
cyberman

Re: CGcalendar: Monat ohne führende 0

Post by cyberman »

Normalerweise ist für die Konfiguration die config.php der richtige Platz ;).
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: CGcalendar: Monat ohne führende 0

Post by antiheld2000 »

bringt übrigens weder in der config noch per udt etwas.
owr_bgld

Re: CGcalendar: Monat ohne führende 0

Post by owr_bgld »

Dann bleibt notfalls eigentlich nur mehr "händisch" zu arbeiten:

Code: Select all

{if ($event.event_date_start|date_format:"%m") < 10 }{$event.event_date_start|date_format:"%m"|replace:'0':''}{else}{$event.event_date_start|date_format:"%m"}{/if}
ich habs nicht getestet und nur schnell reingetippselt, also eventuell ist in der if-Schleife noch ein kleiner Code-Denk-Fehler. Du kannst auch statt "<" das "!=" verwenden, da die Monate 11 und 12 ja keine Null haben.
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: CGcalendar: Monat ohne führende 0

Post by antiheld2000 »

danke, ich habe es just in diesem moment so gelöst:

Code: Select all

{if $event.event_date_start|date_format:"%m"|substr:0:1 == 0}
	{assign var=month_start value=$event.event_date_start|date_format:"%m"|substr:1:1}
{else}
	{assign var=month_start value=$event.event_date_start|date_format:"%m"}
{/if}

{if $event.event_date_end|date_format:"%m"|substr:0:1 == 0}
	{assign var=month_end value=$event.event_date_end|date_format:"%m"|substr:1:1}
{else}
	{assign var=month_end value=$event.event_date_end|date_format:"%m"}
{/if}
Post Reply

Return to “Module und Tags”