[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Поиск в ассоциативном массиве
MailRes
Всем привет!

Есть ассоциативный массив, например, хранится в переменной $aa, его содержание ниже:


var_dump ($aa);

// выводит это:
array (size=3)
'id_56374892' =>
array (size=2)
'itemValue' => string 'Помидор' (length=7)
'Stock' => string '88' (length=2)
'id_244995857' =>
array (size=2)
'itemValue' => string 'Лимон' (length=5)
'Stock' => string '100' (length=3)
'7568904' =>
array (size=2)
'itemValue' => string 'Апельсин' (length=)
'Stock' => string '2' (length=1)


Допустим, необходимо найти в этом массиве значение "Лимон" и вывести значение "ключа Stock" (т.е. 100). Все просто с одной стороны:

echo $aa['id_244995857']['itemValue'];
echo $aa['id_244995857']['Stock'];

Но ключи (в данном примере) id_56374892, id_244995857, 7568904 всё время разные. Было бы хорошо обращаться к значениям через $aa[0]['itemValue'] (и т.д.), но это не работает, возникло 2 вопроса:
1) Можно ли конвертировать строковые значения ключей в числовые?
2) Как "правильно" организовать поиск по такому массиву?
kaww
Цитата
На форуме: 4 года, 9 месяцев, 17 дней

Это шутка такая? Вот самое простое решение:
foreach($aa as $val) {
if ($val['itemValue'] == 'Лимон') {
echo $val['Stock'];
break;
}
}
MailRes
kaww, спасибо)))
А я всю голову сломал biggrin.gif В php познания небольшие, чуть было велосипед не начал изобретать)
Быстрый ответ:

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