The result I get is:#!/usr/bin/perl # test perl script # check behavior of "exists" # reported to activestate as bug 1747 4/11/01 %test_hash = () ; $key1 = 'x' ; $key2 = 'y' ; if ( exists $test_hash{$key1} ) { print "The key exists\n" ; } else { print "The key does not exist\n" ; } if ( exists $test_hash{$key1}{$key2} ) { print "The double key exists\n" ; } else { print "The double key does not exist\n" ; } if ( exists $test_hash{$key1} ) { print "The key exists now\n" ; } else { print "The key still does not exist\n" ; } # end of script ---------------------------
I tried this on ActiveState build 620 and Sun OS version 5.000. Is this a bug or do I just not understand?The key does not exist The double key does not exist The key exists now
In reply to exists() unexpected behavior by Richard
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |