in reply to How can I keep the values in the array?
Sounds like normal behavior to me. When you are looping
through you are overwriting @row1 with
every iteration. In the last iteration
you are overwriting
it with an empty array.
the variable falls out of scope and is therefore
undefined. If you had use strict;
turned on you might have caught that.
Here's some mods for ya!
Try it.. you'll like it....my @IDnumber=(); #Initialize this... while (my @row1 = $sth ->fetchrow_array){ push @IDnumber,[@row1]; # save the row as an anon-array print "@row1\n"; #All the elements were printed out by this state +ment. @IDnumber=@row1; } print "@row1\n"; #this is going to be empty! # snip! print "@IDnumber\n"; foreach my $row(@IDnumber){ printf "%s\n",join(",",@$row); }
UPDATED: Didn't catch the scoping the first time through... Thanks Limbic~Region for watching my back!
| Peter L. Berghold -- Unix Professional Peter at Berghold dot Net | |
| Dog trainer, dog agility exhibitor, brewer of fine Belgian style ales. Happiness is a warm, tired, contented dog curled up at your side and a good Belgian ale in your chalice. | |
|
|---|