On 8/21/06, Andy Greenwood <[EMAIL PROTECTED]> wrote:

I have a program which I am working on which has several different
packages. One of these packages, FluxDB.pm, creates an array of hashes
called @users. Each element is a hash containing (among other things)
username and uid (primary key from the DB this is generated out of).

To be sure, you mean that each element is a *reference* to a hash.
@FluxDB::users is an array of references; what we call an "array of
hashes" in Perl is really an "array of references to hashes".

in Qmgr.pm

foreach my $user (@FluxDB::users) {
        # $user should be a regular hash here, correct?
        $user{'foo'} = ();
        $user{'bar'} = ();
}

The comment is incorrect; $user should be a reference to a hash. Thus
you can write code like this:

 foreach my $user (@FluxDB::users) {
   $user->{'foo'} = 42;
   $user->{'bar'} = undef;
   print "Yabba dabba doo?\n" if $user->{'name'} eq "Fred";
 }

Is that what you're looking for? There are several documentation pages
about references that may fill in some gaps for you. Hope this helps!

--Tom Phoenix
Stonehenge Perl Training

--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to