Ich habe anscheinend eine Menge eines Arrays von Hashes. Ich versuche, einige Werte herauszuziehen und stecke fest (das ist viel tiefer, als ich mit einer Struktur gehen würde. Es sieht so aus.....
%htest = (
8569 => {
4587 => [
{
date=> "2011-01-15",
approved=> 1,
},
{
date=> "2011-01-12",
approved=> 1,
},
],
1254 => [
{
date=> "2011-01-12",
approved=> "",
},
{
date=> "",
approved=> 1,
},
],
},
);
Der Versuch, über dieses Ding zu iterieren, bereitet mir massive Kopfschmerzen. Ich versuche auf die Anzahl der Elemente unter dem zweiten Hash-Wert (4587 und 1254) zuzugreifen. Die Anzahl dieser Elemente, bei denen approved="1" ist, und die Anzahl der Elemente, bei denen das Datum einen Wert enthält.
Wenn ich über sie iterieren könnte, bin ich sicher, dass ich das, was ich brauche, in eine weniger komplexe Struktur schieben könnte, aber bisher stehe ich auf dem Schlauch.
Ich bin so weit gekommen...
while (my ($id, $surveyhash) = each %{ $htest{'8569'} } ){
print "$enumid = $subhash\n";
print Dumper $subhash."\n";
}
Das gibt mir die "4587" und "1254", aber wenn ich versuche, ein Dumper auf $subhash zu machen, bekomme ich einfach....
4587 = ARRAY(0x9a9ffb0)
$VAR1 = 'ARRAY(0x9a9ffb0)
';
1254 = ARRAY(0x9a91788)
$VAR1 = 'ARRAY(0x9a91788)
';
Irgendeine Idee, wie man über diese Monstrosität iterieren kann? Janie