Assuming the hash keys are always the same (and known in advance), here is one straightforward way:
use strict; use warnings; my $people = [ { 'firstname' => ' InReach', 'companyid' => 1042, 'type' => 'client', 'lastname' => 'IT Solutions', 'id' => 1498, 'companyname' => 'InReach IT Solutions' }, { 'firstname' => ' Neil', 'companyid' => 1589, 'type' => 'client', 'lastname' => 'Ssmith', 'id' => 3132, 'companyname' => 'White Staffing Management' }, { 'firstname' => 'Zeeshan', 'companyid' => 1867, 'type' => 'client', 'lastname' => 'Jones', 'id' => 4174, 'companyname' => 'Staff247' } ]; my @keys = qw( firstname companyid type lastname id companyname ); for my $hash (@$people) { print "\n"; for my $key (@keys) { printf "%11s: %s\n", $key, $hash->{$key}; } }
Output:
23:55 >perl 1902_SoPW.pl firstname: InReach companyid: 1042 type: client lastname: IT Solutions id: 1498 companyname: InReach IT Solutions firstname: Neil companyid: 1589 type: client lastname: Ssmith id: 3132 companyname: White Staffing Management firstname: Zeeshan companyid: 1867 type: client lastname: Jones id: 4174 companyname: Staff247 23:55 >
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: Looping through an array of hashes
by Athanasius
in thread Looping through an array of hashes
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |