Printing 2d Array in Perl -
i have problem return string[][]. cannot return whole array , second problem
@language[$id] = [@$eng]; @return = [[@language[$id]],[@$eng]];
when use foreach loop through 2d array (@return). gives me output word:
array(0x30ae1b4) array(0x30ae1e4)
... hello.2.....
word: array(0x30ae534) array(0x30ae574) ...
please help...
sub nextword{ @return = []; $id(1 .. 3) { $eng = $db->selectall_arrayref("select word words left outer join language on words.languageid = language.languageid words.languageid = $id order word asc ;"); #limit 10 offset $currentoffset @language[$id] = [@$eng]; @return = [[@language[$id]],[@$eng]]; foreach $row (@return) { print "word: @$row ...\n"; print " hello.". @$row.".....\n"; } $currentoffset+=10; }return @return;
}
@language[$id] = [@$eng];
should be
$language[$id] = [@$eng];
i don't understand want store in @return
storing wring thing.
@return = [[@language[$id]],[@$eng]];
you assigning array reference.
did read perldoc perldsc people have advised previously, other perl references?
if want loop on results of selectall_arrayref
, can do:
foreach $row (@$eng) { # hell $eng anyway? use meaningful variable names please print "word: $row->[0]\n"; }
if want assign arrayref of words query $language[$id]
, dre's answer good
Comments
Post a Comment