動的ハッシュを作って取り出したいのですが・・・
お世話になります。
フォームから送られてくるデータを動的に作ったハッシュで参照出来るように取り組んでるんですが、思ったように出来ず思い悩んでおります。
どうすれば、意図した形でデータを取り出すことが出来ますでしょうか
my %FORM = (
'd01' => 'あ',
'd02' => 'い',
'd03' => 'う',
'd04' => 'え',
'd05' => 'お',
'd06' => 'か',
'd07' => 'き',
'd08' => 'く',
'd09' => 'け',
'd10' => 'こ',
);
for(sort { $FORM{$a} cmp $FORM{$b} } keys %FORM){
print "$_ = $FORM{$_} \n";
}
$list="d01,d02,d03,d04,d05,d06,d07,d08,d09,d10,";
$i=-1;
foreach (split/,/,$list){
$i++;
$hash{$_}=$i;
}
for(sort { $hash{$a} <=> $hash{$b} } keys %hash){
print "$_ = $hash{$_} \n";
$view = ${"FORM$_"};
print "$view\n";
};
最後のprint "$view\n";箇所で、
$list="d01,d02..."
を
split/,/,$list
したので、
$FORM{d01}
$FORM{d02}
となるようにして、
「あ い う え お」と取り出したいのです。
ご教授のほど、よろしくお願い致します。
お礼
ご回答ありがとうございます。 おっしゃる通り他のところで間違っていたようです。 ありがとうございました。