[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Исключение значения из массива
andryus
Как исключить значение из массива? Есть массив (имеет переменную $account_mod_arr):

Array ( [Аккаунт] => Array ( [account.php] => Аккаунт [profile.php] => Профайл
[account.php?mod=rlinks] => Реф-ссылки [account.php?mod=refs] => Рефералы [payacc.php]
=>
Выплаты [index.php?EXIT=LOGOUT] => ВЫХОД ) [Заработок] => Array ( [inbox.php] =>
Платные письма [clicks.php] => Платные клики [track.php?ad=3] => Серфинг [track.php?
ad=3&surf=auto] => Авто-Серфинг ) [Биржи] => Array ( [refbirjacc.php] => Биржа
рефералов [credbirjacc.php] => Биржа кредитов [accbirjacc.php] => Биржа аккаунтов )
[
Реклама] => Array ( [addiscount.php] => Скидка на рекламу [orderads.php] => Письма /
клики [surfacc.php] => Серфинг [clickads.php?ad=4] => Баннеры [clickads.php?ad=5] =>
Ссылки [clickads.php?ad=6] => HTML реклама [adstats.php] => Статистика рекламы
[siteblist.php] => БАН САЙТОВ ) [Возможности] => Array ( [accupgrade.php] => Апгрейд
[inmail.php] => Внутренняя почта [amounttrans.php] => Переводы средств [account.php?
mod=rparams] => Реф. конфигуратор ) [Дополнительно] => Array ( [actstock.php] => Биржа
акций [luckyticket.php] => Счастливый билет [mainlink.php] => Ссылка на главной
[massicq.php] => ICQ рассылка [monitor.php] => Мониторинг сайтов [robox.php] => Мульти-
пополнение [tsarmnt.php] => Игра Царь Горы ) )


Из массива нужно исключить значение:

[monitor.php] => Мониторинг сайтов


Команда:

unset($account_mod_arr[monitor.php]);
print_r($account_mod_arr);


Выводит массив в том же составе. В чем ошибка в коде?



Спустя 5 минут, 25 секунд (25.03.2011 - 11:50) T1grOK написал(а):

unset($account_mod_arr['monitor.php']);

И еще проверьте, точно ли ключ 'monitor.php' находится на первом уровне.

Спустя 2 минуты, 28 секунд (25.03.2011 - 11:53) alex12060 написал(а):
Попробуй так:


unset($account_mod_arr['Дополнительно']['monitor.php']);
print_r($account_mod_arr);

Спустя 1 минута, 26 секунд (25.03.2011 - 11:54) andryus написал(а):
Цитата (T1grOK @ 25.03.2011 - 08:50)

unset($account_mod_arr['monitor.php']);

И еще проверьте, точно ли ключ 'monitor.php' находится на первом уровне, а второй

Нет это не дало результата. Ну судя исходя из моего примера массива это не первый уровень в массиве

Спустя 1 час, 7 минут, 15 секунд (25.03.2011 - 13:01) inpost написал(а):
andryus
echo '<pre>';
print_r($array);
exit();

Запустил и наблюдаешь, где именно находится твой массив, на каком уровне.
Перебирай через foreach, чтобы найти должный массив, если не будет получаться с кодом перебора через foreach, тогда пиши нам, но покажи свой вариант.
Пример:
функция такая-то () {
foreach ($array as $k=>$v)
{
if($k == 'monitor.php')
unset($array[$k]);
elseif(is_array($v))
запуск функции сам на себя рекурсией c переданным массивом $v!
}
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.