http://www.perlmonks.org?node_id=516217


in reply to Re^2: hash parameter question
in thread hash parameter question

Nope. $_ contains a string. A key from %users; which is presumably a username. Your suggestion will therefore not work.

Had PerlHeathen written:

foreach(values %users) { my %user=$_; my $pw=getpwnam($user{uname}); my $homedir=$pw->dir; }

(note the use of values) then $_ would be a reference to a hash and then your solution would make the code work.

For example:

foreach(values %users) { my %user=%$_; my $pw=getpwnam($user{uname}); my $homedir=$pw->dir; }

It is likely that this is what PerlHeathen was trying to write in the first place.

jarich