不能使用字符串("")作为HASH参考,而严格参考"正在使用

时间:2018-05-18 06:39:47

标签: perl perl-hash

不能使用字符串("")作为HASH参考,而#34; strict refs"在使用中

1 个答案:

答案 0 :(得分:1)

因为 - 有人has already said - $result_string仍然不是哈希。 $_也不是。split。所以使用' hash就像'构建它,根本就不会起作用。

您似乎已将该建议纳入上一个问题的split,但您似乎并不了解代码中实际发生的情况。

for将您的字符串分成一个列表。然后使用for迭代列表。当您使用$_ ('RCSoWLAN', 'ePDG-2', 'Qguest', 'ASUS_ATT_VOWIFI')设置为“当前迭代器”时,它将依次设置为"RCSoWLAN" -> {1} -> {ssid}

在第一次迭代中 - 你正在写:

ssid

这是荒谬的,这就是为什么你会得到错误的原因。

假设您的输入字符串来自另一个来源,其中包括字段名称 - 例如您尝试访问的Class.forname字段。但这实际上并没有真正进入你的程序,所以它也毫无意义。

你最好的选择是回溯,找出你在实际上想要完成什么,并概述输入和输出(以及代码示例),这样我们实际上有一个有机会弄清楚你在做什么。