X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Поиск ключа в многомерном массиве
forest69
forest69
Topic Starter сообщение 13.3.2010, 19:29; Ответить: forest69
Сообщение #1


Добрый вечер всем.
Есть многомерный массив:

[PHP]
<?php
$menu = array( "О нас" => array(
"История" => "./history.php",
"Выпускники" => "./vipusk.php",
"Сотрудники" => "./sotr.php",
"Награды" => "./proud.php",
"Дисциплины" => "./disc.php",
"Труды" => "./trud.php",
"Доктора и кандидаты наук" => "./kand.php"),

"Обучение" => array(
"Задания" => "./works.php",
"СНТО и конкурсы" => "./SNTO.php",
"Практика" => "./praktica.php",
"Студенческий уголок" => "./student/index.html",
"Рекомендуемая литература" => "./publ.php")
);
?>
[/PHP]

Есть по нему поиск:

[PHP]
<?php
session_start();
include('base_menu.php');
foreach($menu as $main => $submenu)
{
if (array_key_exists($page,$submenu))
{
echo('<a href="./index.php" target="_self">Главная</a> / '.$main.' / '.$page);
}else
{
echo('Вы находитесь на официальном сайте кафедры "Инструментальная техника и технологии"');
}
}
?>
[/PHP]

При выводе, если условие if выполняется, то выводится строка:

[PHP]
echo('<a href="./index.php" target="_self">Главная</a> / '.$main.' / '.$page);
[/PHP]

как нужно, но плюс еще после нее строка:

[PHP]
echo('Вы находитесь на официальном сайте кафедры "Инструментальная техника и технологии"');
[/PHP]

И если if не выполняется, то выводится подрят 2 этих строки:

[PHP]
echo('Вы находитесь на официальном сайте кафедры "Инструментальная техника и технологии"');
[/PHP]

Я думаю, что это из-за того, что у меня if находится не там где нужно, как это исправить не соображу
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 13.3.2010, 19:58; Ответить: ZhukV
Сообщение #2


На мой взгляд, лучше вытащить все ключи и индексы масиивва, а потом аж проверять
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
forest69
forest69
Topic Starter сообщение 13.3.2010, 20:22; Ответить: forest69
Сообщение #3


что-то команда list() не работает...
пишу так, но он ничего не выводит
[PHP]
list($about, $studing) = $menu;
[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
forest69
forest69
Topic Starter сообщение 14.3.2010, 2:48; Ответить: forest69
Сообщение #4


а если например попробовать не через цикл foreach?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
forest69
forest69
Topic Starter сообщение 14.3.2010, 13:33; Ответить: forest69
Сообщение #5


Все оказалось намного проще, не нужно было вытаскивать ключи. Просто сделал 2 условия и все.

Вот, что получилось:

Есть двумерный массив:

[PHP]
$menu = array( "О нас" => array(
"История" => "./history.php",
"Выпускники" => "./vipusk.php",
"Сотрудники" => "./sotr.php",
"Награды" => "./proud.php",
"Дисциплины" => "./disc.php",
"Труды" => "./trud.php",
"Доктора и кандидаты наук" => "./kand.php"),

"Обучение" => array(
"Задания" => "./works.php",
"СНТО и конкурсы" => "./SNTO.php",
"Практика" => "./praktica.php",
"Студенческий уголок" => "./student/index.html",
"Рекомендуемая литература" => "./publ.php")
);

[/PHP]

А вот поиск ключа в этом массиве:

[PHP]
if ($thisPage==''){
echo('Вы находитесь на официальном сайте кафедры "Инструментальная техника и технологии"');
}else
{
foreach($menu as $main => $submenu)
{
if (array_key_exists($thisPage,$submenu))
{
echo('<a href="./index.php" target="_self">Главная</a> / '.$main.' / '.$thisPage);
}
}
}
[/PHP]

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Smmsearch.net - поиск самой дешевой накрутки в социальных сетях.
0 Professor7717 3294 13.8.2021, 19:53
автор: Professor7717
Открытая тема (нет новых ответов) Поиск кодера в команду. PHP, Pyton. На постоянку.
7 getsend_mw 2867 3.2.2021, 21:15
автор: getsend_mw
Открытая тема (нет новых ответов) Поиск копирайтера на игровую тематику
Поиск копирайтера на игровую тематику
4 a1ex777 1653 2.10.2020, 16:01
автор: AndreyBozhenko
Открытая тема (нет новых ответов) SmmBox - поиск, аналитика и отложенная публикация в соцсетях. Официально!
23 smmbox 11940 13.5.2020, 11:12
автор: smmbox
Открытая тема (нет новых ответов) Поиск, сбор информации, парсинг (недорого)
Предлагаю услуги по поиску, сбору информации, парсингу и т.д.
0 Kabardin 1351 11.3.2020, 14:59
автор: Kabardin


 



RSS Текстовая версия Сейчас: 24.4.2024, 20:22
Дизайн