Arrays 读取散列内容的数组

Arrays 读取散列内容的数组,arrays,perl,Arrays,Perl,我已经将DBI查询的结果推送到哈希数组中,并使用这些AoH作为输入调用了一个子例程(使用不同AoH的相同子例程)。因为我不知道AoH的确切大小,所以我想动态地确定它。有没有办法获取AoH中的字段/列数 类似于scalar@inContent,但我只需要水平大小 根据AoH的实际大小,我想对其进行迭代并读取其内容。目前,我按名称对字段进行寻址,但它可能因AoH而异,因此这不是一个非常有效的解决方案: foreach my $row (@inContent) { print $row-&

我已经将DBI查询的结果推送到哈希数组中,并使用这些AoH作为输入调用了一个子例程(使用不同AoH的相同子例程)。因为我不知道AoH的确切大小,所以我想动态地确定它。有没有办法获取AoH中的字段/列数

类似于
scalar@inContent
,但我只需要水平大小

根据AoH的实际大小,我想对其进行迭代并读取其内容。目前,我按名称对字段进行寻址,但它可能因AoH而异,因此这不是一个非常有效的解决方案:

foreach my $row (@inContent) {
      print $row->{ID}; }
但我想得到这样的东西:

  print $row->[0]->value;

提前感谢您的帮助。

数组中第一个哈希中的键数为

scalar keys %{$inContent[0]}

其余部分应该有相同的键集,因为这是一个DBI查询,所以它是“水平大小”的一个很好的度量方法。

对于您在这里实际询问的内容,有点混淆。你想达到什么目的?