Упование вы можете помочь мне с этим. Потому что я пытаюсь переупорядочить их, но мне нужно сначала, чтобы быть на одном уровне массива. От ассоциативного массива до одного массива.Как сделать все массивы (включая ассоциативный массив) до одного уровня массива с помощью php?
$MY_ASSOC_ARRAY
Array
(
[0] => Array
(
[MAIN_ID] => 1
[ORDER] => 1
[NAME] => Animal
[PARENT_ID] => 0
[childs] => Array
(
[0] => Array
(
[MAIN_ID] => 4
[ORDER] => 4
[NAME] => doggie
[PARENT_ID] => 1
[childs] => Array
(
[0] => Array
(
[MAIN_ID] => 18
[ORDER] => 18
[NAME] => hunting
[PARENT_ID] => 4
[childs] => Array
(
[0] => Array
(
[MAIN_ID] => 21
[ORDER] => 21
[NAME] => setter
[PARENT_ID] => 18
)
[1] => Array
(
[MAIN_ID] => 22
[ORDER] => 22
[NAME] => pointer
[PARENT_ID] => 18
)
)
)
[1] => Array
(
[MAIN_ID] => 19
[ORDER] => 19
[NAME] => companion
[PARENT_ID] => 4
)
)
)
)
)
)
Хорошо теперь массив не должен быть в этом многоуровневый (ассоциативного) массива вместо этого он будет выглядеть следующим образом:
Array
(
[0] => Array
(
[MAIN_ID] => 1
[ORDER] => 1
[NAME] => Animal
[PARENT_ID] => 0
)
[1] => Array
(
[MAIN_ID] => 4
[ORDER] => 4
[NAME] => doggie
[PARENT_ID] => 1
)
[2] => Array
(
[MAIN_ID] => 18
[ORDER] => 18
[NAME] => hunting
[PARENT_ID] => 4
)
[3] => Array
(
[MAIN_ID] => 21
[ORDER] => 21
[NAME] => setter
[PARENT_ID] => 18
)
[4] => Array
(
[MAIN_ID] => 22
[ORDER] => 22
[NAME] => pointer
[PARENT_ID] => 18
)
[5] => Array
(
[MAIN_ID] => 19
[ORDER] => 19
[NAME] => companion
[PARENT_ID] => 4
)
)
Я не знаю, как будет, что возможно в наиболее эффективна без использования слишком большого объема памяти, что повлияет на скорость с использованием Php Codeigniter. Благодаря!
[UPDATE # 1] вот код, который я попробовал, но порядок отличается
foreach($tree as $key => $value) {
$single[] = $value;
}
И это выход для этого не удалось attemp ...
Array
(
[0] => Array
(
[MAIN_ID] => 1
[ORDER] => 1
[NAME] => Animal
[PARENT_ID] => 0
)
[1] => Array
(
[MAIN_ID] => 4
[ORDER] => 4
[NAME] => doggie
[PARENT_ID] => 1
)
[2] => Array
(
[MAIN_ID] => 18
[ORDER] => 18
[NAME] => hunting
[PARENT_ID] => 4
)
[3] => Array
(
[MAIN_ID] => 19
[ORDER] => 19
[NAME] => companion
[PARENT_ID] => 4
)
[4] => Array
(
[MAIN_ID] => 21
[ORDER] => 21
[NAME] => setter
[PARENT_ID] => 18
)
[5] => Array
(
[MAIN_ID] => 22
[ORDER] => 22
[NAME] => pointer
[PARENT_ID] => 18
)
)
[NAME] => спутник должен быть на последнем массиве не на 4 ([3] => Array)
UPDATE # 2:
чувствовать себя плохо о понижающих голосах ... если этот вопрос или проблема не является полезным на вашем конце
Не уверен, что то, что вы пытались сделать до сих пор. – RiggsFolly
Как вы создаете массив? Возможно, это просто изменить. –
@RiggsПожалуйста, проверьте обновление # 1 для кода, который я попробовал. –