У меня есть категория и подкатегория. У меня есть этот тип массива.
Может кто-нибудь помочь мне, как я могу пройти через n-уровень.
Array
(
[0] => Array
(
[question_title] => hello.
[id] => 1
[step] => 1
[Children] => Array
(
)
)
[1] => Array
(
[question_title] => bye
[id] => 2
[step] => 1
[Children] => Array
(
)
)
[2] => Array
(
[question_title] => gtg
[id] => 3
[step] => 1
[Children] => Array
(
)
)
[3] => Array
(
[question_title] => cya
[id] => 4
[step] => 1
[Children] => Array
(
)
)
[4] => Array
(
[question_title] => not sure
[id] => 5
[step] => 1
[Children] => Array
(
)
)
[5] => Array
(
[question_title] => will see
[id] => 6
[step] => 1
[Children] => Array
(
)
)
[6] => Array
(
[question_title] =>idk
[id] => 7
[step] => 2
[Children] => Array
(
)
)
[7] => Array
(
[question_title] => mayebthis
[id] => 8
[step] => 2
[Children] => Array
(
)
)
[8] => Array
(
[question_title] => maybe this one as well
[id] => 9
[step] => 2
[Children] => Array
(
[0] => Array
(
[question_title] => maybe this one too
[id] => 10
[step] => 2
[Children] => Array
(
)
)
)
)
[9] => Array
(
[question_title] => and this
[id] => 11
[step] => 2
[Children] => Array
(
[0] => Array
(
[question_title] => or this
[id] => 12
[step] => 2
[Children] => Array
(
)
)
[1] => Array
(
[question_title] =>or here too
[id] => 13
[step] => 2
[Children] => Array
(
[0] => Array
(
[question_title] => wait i am also here
[id] => 14
[step] => 2
[Children] => Array
(
)
)
[1] => Array
(
[question_title] => me as well
[id] => 15
[step] => 2
[Children] => Array
(
)
)
[2] => Array
(
[question_title] => me me scream
[id] => 16
[step] => 2
[Children] => Array
(
)
)
)
)
)
)
[10] => Array
(
[question_title] => outside here
[id] => 17
[step] => 2
[Children] => Array
(
)
)
[11] => Array
(
[question_title] => outisde here too
[id] => 18
[step] => 2
[Children] => Array
(
)
)
)
Я перебираю основной массив, но я не знаю, как я могу перебрать дочерние, так как, возможно, у вас может быть много дочерних массивов.
{foreach $question_master_array as $key => $val}
{if $question_master_array[$key]['step'] == 2}
<li><input type="checkbox" name="step1_question_{$question_master_array[$key]['question_id']}">{$question_master_array[$key]['question_title']}</li>
{if $question_master_array[$key]['Children']|@count gt 0}
... some stuff here ...
{/if}
{/if}
{/foreach}
Поскольку я не могу сделать статические, просто применив ключ к массиву Children, так как он может иметь n-уровень. Ну, это мой файл TPL, поэтому я не могу редактировать запросы, которые я принес в этом формате данных.