Итерация по массиву хэшей
Я написал следующую подпрограмму, чтобы перебирать хэши 0 - 7 и распечатывать значение определенного ключа в каждом. Мне нужно получить значение 'b4' в каждом хеше.
Я хотел бы покончить с (0..7), с чем-то более умным, когда есть разное количество хэшей. Например, иногда есть только 2 или может быть 160.
my $out = decode_json $client->responseContent();
#print "\nOutput is :\n\n" . Dumper $out;
for my $slice (0..7) {
my $out = $out->{data}[$slice]{b4};
print " $out \n";
}
Данные структурированы так:
DB<1> x $out
0 HASH(0x125fb5e0)
'data' => ARRAY(0x1260d760)
0 HASH(0x121765d0)
'b1' => '21'
'b2' => '22'
'b3' => '23'
'b4' => '24'
'b5' => '25'
'b6' => '26'
'b7' => '27'
1 HASH(0x125fb650)
'b1' => '21'
'b2' => '22'
'b3' => '23'
'b4' => '24'
'b5' => '25'
'b6' => '26'
'b7' => '27'
2 HASH(0x1236b960)
'b1' => '21'
'b2' => '22'
'b3' => '23'
'b4' => '24'
'b5' => '25'
'b6' => '26'
'b7' => '27'
3 HASH(0x12177030)
'b1' => '21'
'b2' => '22'
'b3' => '23'
'b4' => '24'
'b5' => '25'
'b6' => '26'
'b7' => '27'
4 HASH(0x1260da00)
'b1' => '21'
'b2' => '22'
'b3' => '23'
'b4' => '24'
'b5' => '25'
'b6' => '26'
'b7' => '27'