2016-08-30 2 views
1

Я работаю над разделом категории и подкатегории, где я хочу отобразить всю подкатегорию под их соответствующей категорией.Категория отображения и подкатегория Вложенный формат

Это что-то похожее, например, на категорию подкатегорий Wordpress. Я хочу запустить эту вещь в Codeigniter.

Ниже мой массив

Array 
    (
     [0] => Array 
      (
       [name] => 1 Category 
       [children] => Array 
        (
         [0] => Array 
          (
           [name] => 1 Sub Category 
          ) 

         [1] => Array 
          (
           [name] => 2nd 1 Sub Category 
          ) 

        ) 

      ) 

     [1] => Array 
      (
       [name] => 6 Category 
       [children] => Array 
        (
         [0] => Array 
          (
           [name] => 6 Sub Category 
           [children] => Array 
            (
             [0] => Array 
              (
               [name] => 2 Sub Category 
               [children] => Array 
                (
                 [0] => Array 
                  (
                   [name] => 7 Sub Category 
                  ) 

                ) 

              ) 

            ) 

          ) 

        ) 

      ) 

    ) 

И мое желание аут:

1 Category 
     - 1 Sub Category 
     - 2nd 1 Sub Category 
    6 Category 
     - 6 Sub Category 
      - 2 Sub Category 
       - 7 Sub Category 

Другой Желаемая выход:

<select> 
<option>1 Category</option> 
<option>- 1 Sub Category</option> 
<option>- 2nd 1 Sub Category</option> 
<option>6 Category</option> 
<option>- 6 Sub Category</option> 
<option>- - 2 Sub Category</option> 
<option>- - - 7 Sub Category</option> 
</select> 

Я надеюсь, что я ясно с моим вопросом и желаемый результат ,

+0

http://stackoverflow.com/a/16808998/1531192 такой же, как ваш вопрос –

+0

@krunalnerikar: no это не тот же вопрос приятель –

ответ

2

Я создал функцию, которая возвращает ул, Ли результат для вашего входа .. Попробуйте ..

get_category($array); 

function get_category($array) { 
    echo '<ul>'; 
    foreach($array as $category) { 
     echo '<li>'; 
     echo $category['name']; 
     if(isset($category['children'])) { 
      get_category($category['children']); 
     } 
     echo '</li>'; 
    } 
    echo '</ul>'; 
} 

Обновление для Выбор выхода

echo '<select>'; 
get_category($array); 
echo '</select>'; 

function get_category($array, $prefix = '') { 
    foreach($array as $category) { 
     echo '<option>'; 
     echo $prefix . $category['name']; 
     echo '</option>'; 
     if(isset($category['children'])) { 
      get_category($category['children'], $prefix.'- '); 
     } 
    } 
} 
+0

спасибо за помощь приятеля. Теперь вы можете помочь мне настроить его с помощью выбора, и это вариант.

+0

Я обновил свой ответ с помощью второго выхода. Это поможет вам .. – noufalcep

Смежные вопросы