localtime formatiert ausgeben
|
Seitenanfang |
| Hallo, habe leider nicht so viel Ahnung von cgi & perl, mehr von php. Bin gerade dabei mir ein script anzupassen, dies gibt mir über ***my $localtime = localtime(); $localtime =~ s/\d\d:\d\d:\d\d//;*** das Datum so aus: Sat,Apr 22 2006 Nun hätte ich aber gerne das Datum so: 22.04.2006 Was muß ich dazu ändern?
Datum: 22.04.2006-12:44

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| Hi, das geht wie folgt. my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time); $mt = ($Monatstag < 10) ? "0".$Monatstag : $Monatstag; $m = ($Monat < 10) ? "0".$Monat : $Monat $Jahr += 1900; my $zeit = $mt . "." . $m . "." . $Jahr;
Nachzulesen unter: file:///home/homer/work/selfhtml81/perl/funktionen/datumzeit.htm#localtime-uw
Datum: 22.04.2006-13:58

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| Ups, sorry, nicht aufgepasst. http://de.selfhtml.org/perl/funktionen/datumzeit.htm#localtime
Datum: 22.04.2006-14:01

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| Hallo Enno, Am einfachsten finde ich das so: use POSIX qw/strftime/; $datum = strftime "%d.%m.%Y", localtime;
S.a.: perldoc -f localtime perldoc POSIX Gruss, Michael
Datum: 22.04.2006-14:10

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| Ja, Du solltest dann aber auch dazu schreiben, dass das nur unter Systemen funktioniert, die POSIX unterstützen. http://de.wikipedia.org/wiki/POSIX -uw
Datum: 22.04.2006-14:21

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| OK also Posix wird unterstützt... Nur wie übergebe ich jetzt die Variable damit sie das script richtig in die DB schreibt? So wird das Datum in die DB geschrieben momentan, wenn ich das richtig sehe?
my $addedon = $results->{addedon};
Datum: 22.04.2006-14:43

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| Welche DB verwendest Du denn? Unter Postrgres übergebe ich der Spalte current_date und gut is. Kommt dann halt drauf an, auf welches Format die DB eingestellt ist. -uw
Datum: 22.04.2006-15:31

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| verwende eine MySQL. Naja ich sagte ja bereits dass ich nicht so viel Ahnung von Perl habe, in PHP ist ja die Anpassung des Datumsformats und die Übergabe der Daten an die DB nicht so schwierig. Kann natürlich sein, dass ich das falsch sehe...
Datum: 22.04.2006-16:01

|
re: localtime formatiert ausgeben
|
Seitenanfang |
| Ich habe gerade mal in der MySQL Doku geschaut. Also wenn die Spalte vom Typ DATE ist dann speichert sie das Datum ja als YYYY-MM-DD. Ich schätze jetzt mal, das PHP eine Funktion bereitstellt, die ein Datum DD.MM.YYYY direkt in das DATE Format umwandelt. Kannst Dir die Seite ja mal anschauen. http://dev.mysql.com/doc/refman/4.0/de/datetime.html Wenn die Spalte vom Typ TIMESTAMP wäre, könnte man im SQL Statement NOW() oder UNIXTIMESTAMP() notieren, wenn ich das richtig verstanden habe. Das käme dann dem Schlüsselwort current_date von Postgres gleich. Ah da, jetzt habe ich die Stelle gefunden: [Zitat] Sie können DATETIME-, DATE- und TIMESTAMP-Werte mit folgenden Formaten festlegen: [...] Als Ergebnis einer Funktion, die einen Wert zurückgibt, der in einem DATETIME-, DATE- oder TIMESTAMP-Zusammenhang einen Sinn ergibt, wie NOW() oder CURRENT_DATE. [/Zitat] Müsste also mit CURRENT_DATE funktionieren. Da trägt dann MySQL das aktuelle Datum selbständig ein. -uw
Datum: 22.04.2006-16:36

|