Manchmal, ne? Manchmal ist es eben schräg.

Angenommen win referenziertes JSON-Objet beinhaltet ein Array unter „items“. Das Array hat mehrere Einträge von Hashes. Ein Loop durch die items sähe fast so aus:


foreach my $item(@$order->{'items'}){
print Dumper($item);
}

tut es aber nicht! Hier ist Perl’s Dereferenzierungs-Hölle am Werk. Jede Referenz muss einzeln Aufgehoben werden.


my $iref = $order->{'items'};
my @items = @$iref;
foreach my $item(@items){
print Dumper($item)
}

Nicht immer schön, zwingt aber andererseits auch ein wenig den scope zu beachten. Sei es drum, ich falle immer wieder darauf hinein.