Schrift
[thread]5894[/thread]

Localtime: Abfrage von Stunden und Minuten



<< >> 9 Einträge, 1 Seite
wolfgangk
 2003-11-11 08:29
#70995 #70995
User since
2003-11-03
11 Artikel
BenutzerIn
[default_avatar]
Hallo ,

ich habe eine Anfängerfrage:
mit $zeit=localtime(time) erhalte ich die locale Urzeit
(z.B.: Tue NOV 11 07.22:20 2003), wie kann ich aber nur Stunden oder Minuten abfragen. die Perldoc Helpfunktion ist mir "leider" irgendwie unverständlich und ein Beispiel habe ich leider nich gefunden.
dominicn
 2003-11-11 08:36
#70996 #70996
User since
2003-08-08
327 Artikel
BenutzerIn
[default_avatar]
in perldoc steht doch alles drin:

Code: (dl )
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = localtime(time);


$sec - Sekunden
$min - Minuten
$hour - Stunden
$mday - Tag im Monat (als Zahl zwischen 1 und 31)
$mon - Monat (als Zahl zwischen 0 und 11)
$year - Jahre seit 1900
$wday - Wochentag (0 = Sonntag, 3 = Mittwoch)
$yday - Tag im Jahr (als Zahl zwischen 0 und 364 bzw. 365 in Schaltjahren)

am besten du machst nachher gleich:
Code: (dl )
1
2
$mon++;
$year += 1900;


damit hast du das jahr gleich als vierstellige zahl und den monat im gewohnten bereich zw. 1 und 12
havi
 2003-11-11 08:37
#70997 #70997
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/perl

use warnings;
use strict;

#     0    1    2     3     4    5     6     7     8
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);

print "$hour:$min\n";

1;


Gruss

Edit: Formatierung\n\n

<!--EDIT|havi|1068532759-->
Crian
 2003-11-11 12:42
#70998 #70998
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
oder

Code: (dl )
1
2
3
4
5
6
7
8
#!/usr/bin/perl
use strict;
use warnings;
use diagnostics;

my ($min, $hour) = (localtime(time))[1,2];

printf "%s:%02s", $hour, $min;



wobei vielleicht eher interessant wäre, warum Wolfgang die Perldoc-Erklärungen nicht versteht. Liegt es an der Sprache?
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
havi
 2003-11-13 08:37
#70999 #70999
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
... oder

Code: (dl )
1
2
3
4
5
6
7
8
#!/usr/bin/perl

use strict;
use warnings;

my (@time_array) = (localtime(time))[2,1];

print join(":", @time_array);


Gruss
Relais
 2003-11-13 11:39
#71000 #71000
User since
2003-08-06
2244 Artikel
ModeratorIn
[Homepage] [default_avatar]
Havi: teste das mal, insbesondere in den ersten Minuten einer neuen Stunde, schon weißt Du, warum es nicht so gut ist, wie Crians Ansatz.
Erst denken, dann posten --
26. Deutscher Perl- u. Raku -Workshop 15. bis 17.04.2024 in Frankfurt/M.

Winter is Coming
havi
 2003-11-13 11:44
#71001 #71001
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
Auch ohne testen ist es mir schon klar...

Gruss
Crian
 2003-11-13 12:11
#71002 #71002
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Du könntest es ja durch davorpeppen einer 0 und map'pen von substr der letzten beiden Zeichen wieder "hinbiegen" ;-)

Aber die Klammer um Dein Array bei der Zuweisung dürfte wohl überflüssig sein, da ein Array schon Array-Kontext hat *g
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
havi
 2003-11-13 12:14
#71003 #71003
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
>> Du könntest es ja durch davorpeppen einer 0 und map'pen von substr der letzten beiden Zeichen wieder "hinbiegen" ;-)

:) :) :)

>> Aber die Klammer um Dein Array bei der Zuweisung dürfte wohl überflüssig sein, da ein Array schon Array-Kontext hat *g

Richtig - hab ich vergessen wegzunehmen, da ich vorher 2 Skalare hatte.

Gruss
<< >> 9 Einträge, 1 Seite



View all threads created 2003-11-11 08:29.