in reply to Using Tie::IxHash to keep database query keys/values in order
"I want to keep the keys/values in the same order for every array element in an AoH ref."
You just cant do that. You could instruct data dumper to PRINT them in sorted order (local $Data::Dumper::Sortkeys=1;), or you could program your own print loop to print them in a certain order,
but you cannot make perl keep them in any sort of "order" than the one it decides on.use strict; use warnings; my $data= [ { 'lastname' => 'Smith', 'city' => 'Chicago', 'state' => 'IL', 'firstname' => 'Jim' }, { 'city' => 'Cleveland', 'state' => 'OH', 'firstname' => 'Susan', 'lastname' => 'Jones' }, { 'state' => 'FL', 'lastname' => 'Waters', 'firstname' => 'Sam', 'city' => 'Miami' } ]; my @order=qw/firstname lastname city state/; my $rowct=0; for my $row (@$data) { printf "%5i \n",$rowct++; for my $ordername (@order) { printf " %20s %-20s \n",$ordername,$row->{$ordername}; } }
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Using Tie::IxHash to keep database query keys/values in order
by huck (Prior) on Feb 15, 2017 at 23:00 UTC | |
Re^2: Using Tie::IxHash to keep database query keys/values in order
by bradcathey (Prior) on Feb 15, 2017 at 23:09 UTC | |
by AnomalousMonk (Archbishop) on Feb 16, 2017 at 00:52 UTC |