ばかげた質問で申し訳ありませんが、私は Perl プログラミングに夢中になっており、Perl プログラマーのように考えるのが本当に難しいと感じています。
今日のばかげた質問: id フィールドをキーとして使用して、パイプで区切られたファイルをハッシュにロードします。
#open file
my %hash;
while (<MY_FILE>) {
chomp;
my ($id, $path, $date) = split /\|/;
$hash{$id} = {
"path" => $path,
"date" => $date
};
}
ただし、何らかの理由で(そして変更できないため)IDが一意ではないため、実際にキーをパスにする必要がある場合が数回あります。それをすべてサブルーチンに入れ、キーとして使用する変数の名前を渡します。
load_hash("path");
sub load_hash {
my $key = shift;
#do stuff, and then in while loop
$hash{${$key}} = #and so on
}
しかし perldb では x ${$key} は常に undef ですが、 x ${path} は $path に値を出力します。
私がやろうとしていることをする方法はありますか?
ティア