У меня есть многомерный массив (упрощенный):PHP прибудет подмножество из многоуровневого массива
[1] => Array
(
[id] => 1
[id1] => 0
)
[2] => Array
(
[id] => 2
[id1] => 0
[children] => Array
(
[1001] => Array
(
[id] => 1001
[id1] => 2
)
)
)
[3] => Array
(
[id] => 3
[id1] => 0
[children] => Array
(
[1002] => Array
(
[id] => 1002
[id1] => 2
[children] => Array
(
[1002] => Array
(
[id] => 1002
[id1] => 2
)
[1003] => Array
(
[id] => 1003
[id1] => 2
)
)
)
[1003] => Array
(
[id] => 1003
[id1] => 2
)
)
)
Я хотел бы, чтобы выбрать ее часть (как массив), со всеми детьми, прикрепленных к нему.
Пример 1 (позиция 3, бесконечная глубина):
$result = getArrayKey(3, $dept = 0);
[3] => Array
(
[id] => 3
[id1] => 0
[children] => Array
(
[1002] => Array
(
[id] => 1002
[id1] => 2
[children] => Array
(
[1002] => Array
(
[id] => 1002
[id1] => 2
)
[1003] => Array
(
[id] => 1003
[id1] => 2
)
)
)
[1003] => Array
(
[id] => 1003
[id1] => 2
)
)
Пример 2 (позиция 3, отдел 1):
$result = getArrayKey(3, $dept = 1);
[3] => Array
(
[id] => 3
[id1] => 0
)
Пример 3 (позиция 3, бесконечная глубина):
$result = getArrayKey(1002, $dept = 0);
[1002] => Array
(
[id] => 1002
[id1] => 2
[children] => Array
(
[1002] => Array
(
[id] => 1002
[id1] => 2
)
[1003] => Array
(
[id] => 1003
[id1] => 2
)
)
)
Я могу пройтись по этому массиву и сохранить необходимые уровни в новом массиве, я думаю, но есть ли более простой способ сделать это?
Да ... Я видел это слишком поздно. Огромные блоки кода меня путают. ;) Я уже изменил свой ответ. –
Можете ли вы сделать небольшое редактирование, чтобы я мог удалить нижний предел? : P – Lix
Несомненно. Благодарю. ;) –