Как отобразить заголовок и субтитры в foreach - PHP - PullRequest
0 голосов
/ 03 июля 2011

У меня следующий формат массива:

Array
(
    [0] => Array
       (
            [title] => Main Cat
            [subfield] => Array
              (
                [1] => Array
                    (                            
                        [sub_title] => Sub Cat 1
                    )

                [2] => Array
                    (                            
                        [sub_title] => Sub cat 2
                    )

               )
         )
       [1] => Array
        (
            [title] => Main cat 2
            [subfield] => Array
              (
                [1] => Array
                    (                            
                        [sub_title] => Test Cat 1                            
                    )

                [2] => Array
                    (                            
                        [sub_title] => Test Cat 2
                    )

               )
         )

Мне нужно отобразить его в следующем формате, используя foreach с использованием PHP. O / P:

Main Cat

 Sub Cat 1

 Sub Cat 2

Main cat 2

 Test Cat 1

 Test Cat 2

Как это можно сделать ... Заранее спасибо ...

РЕДАКТИРОВАТЬ: My Try is

 $f = 1;
      foreach($vars['fields'] as $value) {
         $vars['topic_main'][] = $value['title']."<br>&nbsp;".$value['subfield'][$f]['sub_title']."<br>";
         $f++;
      }

      $vars['title'] = implode(' ' ,$vars['topic_main']);

Мой O / P

Main Cat

 Sub Cat 1 


Main cat 2

 Test Cat 1

Ответы [ 3 ]

5 голосов
/ 03 июля 2011

Предполагая, что ваш массив называется категориями.(Изменить: $ vars ['fields'])

foreach($vars['fields'] as $cat){

    echo $cat['title'].'<br/>';
    foreach($cat['subfield'] as $sub){
        echo $sub['subtitle'].'<br/>';
    }
}
1 голос
/ 03 июля 2011
echo '<ul>';
foreach ($array as $item):
    echo '<li>';
    echo $item['title'];
    echo '<ul>';
    foreach ($item['subfield'] as $sub):
        echo '<li>';
        echo $sub['subtitle'];
        echo '</li>';
    endforeach;
    echo '</ul>';
    echo '</li>';
endforeach;
echo '</ul>';
0 голосов
/ 03 июля 2011

просто используйте для каждого и другого foreach внутри, в чем проблема?

foreach ($arr as $main)
{  
  echo $main['title'];
  foreach ($main['subfield'] as $sub)
  {
     echo $sub['sub_title'];
   }

и делайте косметику ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...