2012-01-27 28 views
0

1つの要素を持つ配列への参照を返す次のコードがあります。その要素には、ハッシュへの参照が含まれています。私はこの二重参照を排除し、ハッシュのコピーか、ハッシュ自体のどちらかで作業して、キーを使用できるようにしたいと思います。参照から参照を含む配列へのハッシュを取得するPerl

は、ここでは、コードです:抽出

my $extracted = $db_obj->extract('source_tag', $source_tag); 

だから、$は、配列への参照が含まれています。その配列には、ハッシュへの参照という単一の要素があります。私は、Data :: Dumperのを使用する場合、ハッシュは、次のようになります。

$VAR1 = \\[ 
       { 
       'data_center' => 'qe76', 
       'description' => 'locator', 
       'abs_delta_dollar_percent' => undef, 
       'content_type' => 'Raw', 
       'source_tag' => 'hg9efx4', 
       'producer' => 'partner', 
       'id' => '15282', 
       'storage_type' => 'box', 
       'storage_path' => '/mnt/storage/2012' 
       } 
      ]; 

私は値をつかむためにキーを使用することができますので、直接ハッシュにアクセスできるようにしたいと思います。この二重参照を削除するにはどうすればよいですか?

答えて

1
my %hash = %{ $db_obj->extract('source_tag', $source_tag)->[0] } ; 
+0

これはそのトリックでした。本当にありがとう。 –

+0

@phileasfoggよろしくお願いします。 – dgw

1
my $extracted = $db_obj->extract('source_tag', $source_tag) -> [0]; 
0

ように思われる:

$$$$result[0] 
or 
$$$result[0] 

あなたはその二重のバックスラッシュを意味するものではなかった場合。

関連する問題