Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]12410[/thread]

Zeit + x Stunden



<< >> 2 Einträge, 1 Seite
Gast Gast
 2008-08-27 11:26
#114024 #114024
Hallo,

Ich habe zwei Strings, einmal die Zeit (mm:hh) und einmal das Datum. (dd.mm.yyyy)
Jetzt möchte ich auf diese Zeit x Stunden draufrechnen.
Wie mache ich das?

Mit Bitte um Hilfe für einen Newbie,
Stephan
renee
 2008-08-27 11:41
#114027 #114027
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Dazu nimmt man am Besten das Modul CPAN:DateTime.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/perl

use strict;               # strict und warnings sollten in jedem Perl-Programm
                          # stehen
use warnings;
use DateTime;             # Das Modul vom CPAN, mit dem man Datumsberechnungen
                          # machen kann

my $hours = '23:59';      # Die Uhrzeit auf die etwas draufgerechnet werden soll
my $date  = '12.12.2008'; # das Anfangsdatum
my $diff  = 3;            # 3 Stunden draufrechnen

my %hash  = ();
# speichere in dem Hash die Werte aus den Strings.
@hash{qw/day month year hour minute/} = (split(/\./, $date), split(/:/, $hours));

# Erzeuge ein neues DateTime-Objekt mit den Daten von oben als Parameter
my $date     = DateTime->new( %hash );
# Addiere die Zeitdifferenz hinzu
my $new_date = $date->add( hours => $diff );

# Ausgabe der neuen Zeit
print "Neue Zeit: ", $new_date->dmy('.'), " ", $new_date->hms,"\n";
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 2 Einträge, 1 Seite



View all threads created 2008-08-27 11:26.