Потому что - как уже сказал - $result_string
- это еще не хеш.Ни один не $_
.Поэтому использование на нем конструкций типа «хеш-код» просто никогда не сработает.
Похоже, вы включили совет к split
из вашего предыдущего вопроса, но, похоже, вы не понимаете, что на самом делепроисходит в вашем коде.
split
разбивает вашу строку в список.Затем вы повторяете список, используя for
.Когда вы используете for
$_
, устанавливается «текущий итератор», поэтому он будет по очереди установлен на ('RCSoWLAN', 'ePDG-2', 'Qguest', 'ASUS_ATT_VOWIFI')
.
На первой итерации - вы пишете:
"RCSoWLAN" -> {1} -> {ssid}
Что бессмысленно, и именно поэтому вы получаете ошибку, которая у вас есть.
Я при условии ваша входная строка поступает из другого источника, который включает имена полей - например, поле ssid
, к которому вы пытаетесь обратиться.Но это никогда не входит в вашу программу, так что это также бессмысленно.
Ваша лучшая ставка на самом деле - вернуться назад и выяснить, чего вы действительно действительно пытаетесь достичь здесь, и наметить ввод и вывод (вместе с примером кода), чтобы у нас фактически былшанс выяснить, что ты делаешь.