ahh great, you all cleared it up perfectly for me, thank you. that perlfaq section was great also.
Philipp Traeder wrote: > On Friday 09 July 2004 19:25, Gunnar Hjalmarsson wrote: >> Philipp Traeder wrote: >> > I don't know what an expert would say, >> >> Neither do I. :) > > I think this is a good base for talking about hashes. ;-) > >> > but for testing if a hash contains an element, I normally use >> > "exists": >> >> Your wording "if a hash contains an element" is ambigous IMO. A hash >> or associative array consists of key/value pairs, where the keys are >> indexes and the values are considered to be the elements (I think). > > Ok - that's a possible terminology, and yes, I wasn't completely precise > ;-) > >> >> > if (exists ($hash{'mykey'})) { >> > print 'mykey exists.'; >> > } >> >> That's fine, as long as you are aware that $hash{mykey} may well be >> undefined even if it "exists". > > I think *this* is the interesting point here - it's quite possible that a > certain key exists in a hash, but has an undefined value: > > my %hash = (42 => undef); > > print "42 exists\n" if (exists $hash{42}); > print "42 is defined\n" if (defined $hash{42}); > > If you ask me, you can't put up a general rule about using "exists" or > "defined" - it's a questions of how/on which conditions the hash has been > filled... > > Just my 5 cent, > > Philipp > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>