parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 11.03.2011 00:55

foreach естественно дает ошибку
для foreach вовсе не естественно давать ошибку.
ошибку может давать код, который согласно написанному, должен делать что-то странное (например "печатать" в output хэш).
вы попробуйте в foreach выводить просто ключи.

кроме того, когда речь идёт про ошибки, тут принято приводить код, который к этим ошибкам привёл. без кода обсуждать совершенно нечего.
name_1, name_2 неизвестны к ним надо как-то обратиться
вообще-то основное назначение хэшей -- быстро получить значение по ключу (это делается гораздо быстрее, чем через locate у таблицы).
т.е. так:
$хэш.ключ1.ключ2.ключ3
значение ключа может быть в переменной:
$хэш.ключ1.[$переменная_с_именем_ключа2].ключ3
в вашем случае, вы похоже пытаетесь в лоб заменить таблицу на хэш, но я не понимаю, зачем вам это потребовалось. если таблицы вас устраивают, то хэши для решения _тех-же_ задач использовать незачем.