Perl Mojolicious 数组循环

Perl Mojolicious array loop

不确定这是否可能。但我正在尝试遍历一个数组。我不断在 for 循环行收到错误消息 Can't use an array as a reference$product_results->[6] 确实包含数据。

my @product_array = split(',', $order->[6]);
$product_results->[6] = \@product_array;
% for (@$product_results->[6]){
    <%= $_->[0] %>
% }

您同时使用了两种取消引用形式。

要么使用

$ref->[6];

@$ref[6];

两者同时将 Perl 将引用作为数组取消引用到类似这样的东西中,然后将其作为数组引用取消引用以获取第 7 个元素。但那是行不通的。

(1, 2, 3)->[7]

您真正想要做的是取消引用数组引用里面您在数组引用中的第七个索引。

# this will deref the content of index 7
# |      this will deref $ref into an array
# |      |
  @{ $ref->[7] }

为了进一步说明,您的数据结构如下所示。

$ref = [
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    [                   # 7
        qw/ foo bar baz/
    ],
]