lamo4ok
@lamo4ok
Программист

Как в php наиболее изящно сделать неименованный массив именованным, при том что имя элемента должно браться из самого элемента, являющегося массивом?

Есть массив примерно такого вида:

Array(
[0] => Array([id] => 341894 [name] => Дата экскурсии [values] => Array([0] => 1447372800) )
[1] => Array([id] => 341942 [name] => TripBook [values] => Array([0] => Array([value] => 0)) )
[2] => Array([id] => 341944 [name] => SAdvice [values] => Array([0] => Array([value] => 0)) )
[3] => Array([id] => 562286 [name] => Название экскурсии [values] => Array([0] => Array([value] => Тест)) )
)


В нем есть меняющееся от раза к разу количество элементов, которые в коде выше пронумерованы, и эти элементы сами тоже являются массивами. В этих элементах (массивах) есть именованное поле id, и вот хотелось бы, чтобы тот родительский массив превратился в итоге в такое:

Array(
[id341894] => Array([id] => 341894 [name] => Дата экскурсии [values] => Array([0] => 1447372800) )
[id341942] => Array([id] => 341942 [name] => TripBook [values] => Array([0] => Array([value] => 0)) )
[id341944] => Array([id] => 341944 [name] => SAdvice [values] => Array([0] => Array([value] => 0)) )
[id562286] => Array([id] => 562286 [name] => Название экскурсии [values] => Array([0] => Array([value] => Тест)) )
)


То есть когда неименованные элементы стали бы именованы, при том именованы по полю, которое в них само и содержалось.

Задача, ради которой это все делается - вытащить значение из [values] => Array() из того или иного элемента по известному id. Понятно, что можно просто перебрать массив, но хочется красоты.
  • Вопрос задан
  • 263 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы