在要求我维护一些Perl代码中,我遇到了以下结构:
myArray => ['id1', 'id2', 'id3', 'id4']
我在网上搜索了一些定义/解释,但我只能找到对标量哈希的引用:
https://www.guru99.com/perl-tutorials.html
这是我遇到的实际代码的片段:
$config = eval {
XMLin(
$inFile,
MyArray => [
'id1', 'id2',"id3", 'id4'
]
);
};
散列整个数组(不包含散列值)的语法是什么意思?
答案 0 :(得分:5)
您提到了哈希和哈希,但都没有涉及。
IDENT => ...
与
相同'IDENT', ...
[ ... ]
基本上等同于
do { my @anon = ( ... ); \@anon }
除非没有新范围。
XMLin(
$inFile,
MyArray => [
'id1', 'id2',"id3", 'id4'
]
);
等同于
my @anon = ( 'id1', 'id2', 'id3', 'id4' );
XMLin($inFile, 'MyArray', \@anon);
这不是对XMLin
的正确调用。如果存在,则第二个参数应为选项之一的名称(例如ForceArray
。)