Christian Kruse: Hash überprüfen

Beitrag lesen

你好 Beat,

if ($hash{$var})

Damit hast du $hash{$var} ins Leben gerufen mit dem Wert undef.

Das ist falsch. Siehe:

  
#!/usr/bin/perl -w  
  
use strict;  
use Data::Dumper;  
  
my %var = ();  
  
print "Dumper 1: ",Dumper \%var;  
print "Keys 1: ",join(",",keys %var),"\n";  
print "Exists 1: ",exists($var{'abc'})?"true":"false","\n";  
  
if($var{'abc'}) {  
  print "wahr\n";  
}  
  
print "Dumper 2: ",Dumper \%var;  
print "Keys 2: ",join(",",keys %var),"\n";  
print "Exists 2: ",exists($var{'abc'})?"true":"false","\n";  

Ausgabe:

  
ckruse@sunshine ~ $ ./test.pl  
Dumper 1: $VAR1 = {};  
Keys 1:  
Exists 1: false  
Dumper 2: $VAR1 = {};  
Keys 2:  
Exists 2: false  
ckruse@sunshine ~ $ perl -v  
  
This is perl, v5.8.8 built for x86_64-linux  

再见,
 克里斯蒂安

--
http://wwwtech.de/
IRC-Clients und Irssi-Scripting | Flyspray
Unsere Vorstellungen von der Ewigkeit sind genauso nuetlich wie die Mutmassungen eines Kuekens ueber die Aussenwelt bevor es die Eierschale aufbricht.