Perlで「ハッシュの配列」

ハッシュの配列を使用すると、構造化されたデータの配列にアクセスできる。


プログラム例−セットする側

# データ構造は、ハッシュの配列。
my @hash_array = ();
sub get_tmp()
{
    open(IN,"<$tmp_file") || die "$tmp_file open error";
 
    while(<IN>){
        chomp;
        my @rec = split(/\t/);
 
        # ハッシュコンストラクタ{}を使って、無名ハッシュを作成。
        my $hashref = {
            id   => $rec[0],
            name => $rec[1]
        };
        # 配列にハッシュへのリファレンスをpush。
        push(@hash_array, $hashref);
    }
    close(IN);
}



プログラム例−ゲットする側

foreach my $hashref (@hash_array) {
    print "ID  =".$hashref->{id}."\n";
    print "NAME=".$hashref->{name}."\n";
}