Thread Modul-Einbindung mit eval (40 answers)
Opened by bianca at 2011-03-28 18:38

bianca
 2011-03-28 17:55
#147003 #147003
User since
2009-09-13
6978 Artikel
BenutzerIn

user image
2011-03-28T15:37:48 pq
amnesie?

Nö aber das hatte damals schon nicht funktioniert mit diesem BEGIN daher hab ich das bis jetzt nie benutzt.

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 -w
use strict;
use warnings;
use Date::Calc qw (
    System_Clock
);
use Data::Dumper;
my $zeitkorrektur_modul = 1;
BEGIN {
    eval "use Win32::UTCFileTime_SIMULATION_NICHT_VORHANDEN qw (:globally); 1;" or $zeitkorrektur_modul = 0;
}
print "\$zeitkorrektur_modul = $zeitkorrektur_modul\n";
print "\$@ = $@\n";

my @test = System_Clock (0);
print Dumper (\@test);
print "Doofe Sommerzeit aktiv: " . ($test[8] == 1 ? 'ja' : ($test[8] == -1 ? 'unbekannt' : 'nein')) . "\n";

print "time: " . time() . "\n";
print "localtime: " . localtime() . "\n";
print "gmtime: " . gmtime() . "\n";
my $datei = 'datei.bak';
print "stat Testdatei (25.03.2009 18:11:30 MEZ): " . (stat($datei))[9] . ' / ' . gmtime((stat($datei))[9]) . "\n";


ACHTUNG ACHTUNG ACHTUNG!
Modulname extra falsch geschrieben, um zu simulieren, dass das Modul nicht vorhanden ist!

Ausgabe ist dennoch:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$zeitkorrektur_modul = 1
$@ =
$VAR1 = [
2011,
3,
28,
17,
53,
28,
87,
1,
1
];
Doofe Sommerzeit aktiv: ja
time: 1301327608
localtime: Mon Mar 28 17:53:28 2011
gmtime: Mon Mar 28 15:53:28 2011
stat Testdatei (25.03.2009 18:11:30 MEZ): 1301076690 / Fri Mar 25 18:11:30 2011

Warum bleibt $zeitkorrektur_modul auf 1 und $@ ist leer?
10 print "Hallo"
20 goto 10

View full thread Modul-Einbindung mit eval