我是一个总的Perl新手,所以原谅我,如果这真的很愚蠢,但我无法想出这一点.如果我有一个这样的数组:
my @array = ( {username => 'user1',email => 'user1@email' },{username => 'user2',email => 'user2@email' },email => 'user3@email' } );
循环访问这个数组最简单的方法是什么?我以为这样的事情会奏效:
print "$_{username} : $_{email}\n" foreach (@array);
但它没有.我想我也陷入了一种PHP心态,我只能做一些事情:
foreach ($array as $user) { echo "$user['username'] : $user['email']\n"; }
解决方法
@array包含哈希引用,所以你需要使用 – >去违反.
print "$_->{username} : $_->{email}\n" foreach (@array);
另请参见文档,例如perldoc perlreftut和perldoc perlref.