in reply to Foreach in a 2D array
Remember that a hash is a datastructure where each element has a *key* and a *value*. Looking at your code I think your intent was to create a hash (%dataoptions) that had one key "Gender", and that key "Gender" having a related value that is an array whose elements are "Male" and "Female".
So, this:
should be this:my %dataoptions = ( "Gender", ["Male", "Female"] );
The other thing to remember is that this:my %dataoptions = ( "Gender" => ["Male", "Female"] );
creates a *reference* to an anonymous array. So in hash %dataoptions, the value corresponding to key "Gender" is a *reference* to an anomyous array containing elements "Male" and "Female". So then when you do["Male", "Female"]
$option is a *reference* to an array.foreach $option ($dataoptions{$columns[$i]})
I think you want your loop to be something like this:
HTH.for ($i = 0; $i < @columns; $i++) { print $columns[$i].': '; my $arrayref = $dataoptions{$columns[$i]}; foreach $option (@$arrayref) { print '<input type="radio" name="'.$columns[$i].'" value="'.$ +option.'"> '.$option.' '; } }
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Foreach in a 2D array
by osunderdog (Deacon) on Oct 28, 2004 at 13:54 UTC | |
by hmerrill (Friar) on Oct 28, 2004 at 18:10 UTC |
In Section
Seekers of Perl Wisdom