Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Perl:хеш массивов массивов в подпрограме

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
zhukovia



Зарегистрирован: 22.03.2003
Сообщения: 17
Откуда: Красноярск

СообщениеДобавлено: Чт Фев 05 2004 15:05    Заголовок сообщения: Perl:хеш массивов массивов в подпрограме Ответить с цитатой

Вообще задача следующая. Нужно динамически создавать меню, состоящее из пунктов меню и пунктов субменю (file/new,save,delete | edit/copy,paste,delete). Для этого я создал таблицу в MySQL (ind_g(char15),nn(int),ind(char15),name(char35),link(char25)) ind_g - имя группы или название пункта меню, nn - номер субменю (у пункта меню номер 0), ind - имя пункта субменю (у пункта меню имя совпадает с ind_g), name - название пункта (то что выводиться на экран), link - ссылка с этого пункта. Для хранения всего этого создается хеш массивов @s_menu[nn]=(ind,name,link), $hash{$ind_g}[@s_menu].
Далее в подпрограме нужно вытащить из хеша ind_g, создать пункт меню, перебрать все попорядку все элементы @s_menu, создать субменю и т.д.
Я сделал примерно следующее.
----------main.pl-begin
use mod1;
@arr1=(1,2...);
...
@arr=(@arr1,@arr2...);
$hash{name}=[@arr];
mod::s2();
...
----------main.pl-end
----------mod1.pm-begin
...
sub s2{
while (($key,$value) each %main::hash)
{
print "$$value[0][1]"; #Здесь все выводится
while ($$value)
{
#А вот тут выборки не происходит
}}}
...
----------mod1.pm-end
Может я что не так делаю? Пробовал передовать в подпрограмму хеш s2(%hash), а потом использовать его sub s2(\%) {%hash_sub=$_[0]} ничего не получилось.
Подскажите как сделать в подпограме выборку из массива @arr, массивов @arr1,@arr2... с последущим обращением к содержимому этих массивов (@arr1,@arr2...).
Заранее спасибо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
zhukovia



Зарегистрирован: 22.03.2003
Сообщения: 17
Откуда: Красноярск

СообщениеДобавлено: Сб Фев 07 2004 10:47    Заголовок сообщения: Ответить с цитатой

Ну помогите же... Работа стоит...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...