in reply to Not an ARRAY reference
Your for loops expect your complex data structure @responsetextall to be an array-of-arrays-of-structures something like this:
use strict; use warnings; my @responsetextall = ( [ { id => 'id00', status => 'status00' }, { id => 'id01', status => 'status01' }, ], [ { id => 'id10', status => 'status10' }, { id => 'id11', status => 'status11' }, ], ); for my $i ( 0 .. $#responsetextall ) { #$responsetextall[$i] =~ s/]\[/,/g; for my $j ( 0 .. $#{ $responsetextall[$i] } ) { my $responseid = $responsetextall[$i][$j]{id}; my $responsests = $responsetextall[$i][$j]{status}; print "$responseid $responsests\n"; } }
In your code, $responsetextall[$i] are not array references because you push array arrays (rather than array references)into @responsetextall. The following change will fix your immediate problem. I doubt that it is the only correction required.
#push @responsetextall, @responsetext; push @responsetextall, [@responsetext];
Bill
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Not an ARRAY reference
by chandantul (Scribe) on Nov 07, 2020 at 05:52 UTC |
In Section
Seekers of Perl Wisdom