gpt4 book ai didi

perl - CGI错误无法使用数组作为引用

转载 作者:行者123 更新时间:2023-12-02 10:45:06 25 4
gpt4 key购买 nike

我的配置是Debian Stretch

我使用以下命令验证我的Perl代码

line perl -wcT admin.cgi

我在这一行的代码中有一个错误:
print &select("$id-2",\@values,\@values,@{$FORMAT{$name}}->[1]),"<br /> \n";

错误是:

Can't use an array as a reference



我也尝试过
this web editor

看来错误是:
@{$FORMAT{$name}}->[1]

最佳答案

如您所说,问题出在这里:

@{$FORMAT{$name}}->[1]

看来 $FORMAT{$name}应该包含一个数组引用。并且您想从引用的数组中获取第二个元素。有(至少!)两种方法。

您可以取消引用数组引用以获取数组,然后使用标准数组索引括号:
@{$FORMAT{$name}}[1]

或者,您可以将deferencing箭头与数组索引括号一起使用:
$FORMAT{$name}->[1]

您不能做的(如您所发现的)是同时使用两种语法:-)

更新:正如Borodin在评论中指出的那样,我的第一个解决方案是错误的。从数组访问单个元素时,应将 @更改为 $。所以实际上应该是:
${$FORMAT{$name}}[1]

在我的第二个解决方案中,箭头实际上是可选的(在两组括号之间总是引用箭头),因此您可以编写:
$FORMAT{$name}[1]

关于perl - CGI错误无法使用数组作为引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51950005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com