Как правильно получить значение по ключу в двумерном массиве [ключ, значение]?

Рейтинг: 0Ответов: 2Опубликовано: 09.10.2014

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

Array( [0]=>Array([id]=>1[name]=>Вип) [1]=>Array([id]=>2[name]=>Премиум) )

Как будет правильнее получить значение name, зная id?
Дело в том, что массив может быть очень большой, и данная операция может происходить не один раз: хотелось бы, чтобы это не повлияло на быстродействие.

Ответы

▲ 1Принят

ID - уникальный? если да то как нашли break чтобы не прокручивать дальше, а вообще если массив всегда один а поисков много для него то отсортируйте его любым способом (там в дерево запихайте) там поиск в разы быстрее.

▲ 1

Если я правильно понял, то просто пройтись по массиву, сверить id и вывести name.

$id = 2;

$arr = array(
    array('id' => 1, 'name' => 'vip'),
    array('id' => 2, 'name' => 'premium')
);

foreach ($arr as $k => $v) {
    $return = ($v['id'] == $id) ? $v['name'] : null;
    echo $return;
}