Hallo, Am Tue, 05 Oct 2004, Heinz W. Pahlke schrieb:
On 05-Oct-2004 Bernhard Walle wrote:
* Heinz W. Pahlke
[2004-10-05 14:09]: Aber eigentlich reichte es auch aus, wenn die Monate als Zahlen ausgegeben wuerden. Doch print strftime "%e. %d %Y" setzt die Monate immer zweistellig, also ggfs. mit einer fuehrenden Null.
welche Programmiersprache überhaupt? Also nach meinen Informationen geben %e und %d beide den Tag aus, also verstehe ich das Format nicht.
%e loescht eine fuehrende Null, %d laesst sie stehen.
Ich bevorzuge das ISO-Format %Y-%m-%d. Kompakt, eindeutig, inter- national und in Listen/Dateinamen automatisch richtig sortiert.
Um mir das Schreiben von Webseiten zu erleichtern, benutze ich wml, das auf perl zurueckgreift. Das Aktualisierungsdatum setze ich z.B. mit der folgenden Konstruktion ein:
------------------------------------8<----------------------------------
..FOOTER>>
<p>Letzte Aktualisierung: <: use locale; use POSIX; setlocale(LC_ALL, "de_DE.utf8");
print strftime "%e. %B %Y", localtime($(WML_SRC_TIME)); :>. Design by <a href="http://www.Pahlke-KunstWebDesign.de/" title="www.Pahlke-KunstWebDesign.de">Pahlke-KunstWebDesign</a></p>
<<..
Also ich kann das nicht nachvollziehen (perl 5.8.0): $ perl -MPOSIX -Mlocale -e ' setlocale(LC_ALL, "de_DE.utf8"); for $fmt ("%e.%b.%Y", "%e.%m.%Y", "%d.%b.%Y","%d.%m.%Y") { print "»", strftime($fmt, localtime()), "«\n"; }' » 5.Okt.2004« » 5.10.2004« »05.Okt.2004« »05.10.2004« Oder eben, eine Moeglichkeit das fuehrende Leerzeichen loszubekommen: $ perl -MPOSIX -Mlocale -e ' setlocale(LC_ALL, "de_DE.utf8"); @t=localtime(); printf "»%i.%s«\n", strftime("%e", @t), strftime("%m.%Y", @t);' »5.10.2004« Oder auch per s/// nachbearbeiten: $ perl -MPOSIX -Mlocale -e ' setlocale(LC_ALL, "de_DE.utf8"); ( $d = strftime("%e.%m.%Y", localtime()) ) =~ s/^ //; print "$d\n";' Noch Fragen? HTH, -dnh -- CH3-¬_ _ _ _ CH3-<_>-<_>-<_>-<_> <_>-<_>-<_>-<_> <_>-<_>-<_>-<_> 1,2-dimethylchickenwire -- after A. Dalgeish