То, что вы утверждаете, не соответствует действительности.
use strict;
use warnings;
my $decoded_file = [
{
'data' => {
'status' => 'Y',
'id' => 0,
'type' => 'car',
'details' => [
{
'year' => '2001',
'color' => 'red'
}
]
}
} # Added this.
]; # Added this.
for my $items (@{$decoded_file}) {
}
print "ok\n";
производит
ok
В том, что вы нам показали, $decoded_file
содержит ссылку на массив, поэтому ваш циклдействительно, что вы должны использовать.