2010-02-06 75 views
0
Array 
(
    [0] => Array 
     (
      [0] => SimpleXMLElement Object 
       (
        [0] => Pop music 
       ) 

      [1] => SimpleXMLElement Object 
       (
        [0] => Rock music 
       ) 

      [2] => SimpleXMLElement Object 
       (
        [0] => Music edition 
       ) 

     ) 

    [1] => Array 
     (
      [3] => SimpleXMLElement Object 
       (
        [0] => Pop music 
       ) 

      [4] => SimpleXMLElement Object 
       (
        [0] => Rock music 
       ) 

      [5] => SimpleXMLElement Object 
       (
        [0] => Opera music 
       ) 

     ) 

    [2] => Array 
     (
      [6] => SimpleXMLElement Object 
       (
        [0] => Advs music 
       ) 

      [7] => SimpleXMLElement Object 
       (
        [0] => Rington 
       ) 

      [8] => SimpleXMLElement Object 
       (
        [0] => Game 
       ) 
     ) 

) 

窝阵列我有一个像上面的数组,但我不知道如何在智者的foreach或部分循环吧。有没有人可以帮我一个忙吗?我花了一天的时间,所以请给我一些想法。不管怎样,谢谢你!!部分与智者

回答

0

你可以做嵌套的foreach语句

foreach($array as $childArray) 
{ 
    foreach($childArray as $obj) 
    { 
     echo $obj->0; 
    } 
} 

虽然我不知道变量是正确的,命名为如果他们有许多在第一个字符,所以你可能需要使用括号

$obj->{0}; 
进行访问
+0

感谢chacha102这么多,但我把它写在智者不是PHP所以你的代码无法运行! – gacon 2010-02-06 04:25:38

+0

那你为什么把你的问题标记为'PHP'? – 2010-02-06 04:26:51

+0

啊我忘了这个我只是觉得它属于smarty和PHP,也许它让你觉得那样。对不起人! – gacon 2010-02-06 04:41:14

0
{foreach from=$menu key=k item=v name=menu} 
    {if $smarty.foreach.menu.index == 0} 
     VietMusic 
    {/if} 
    {if $smarty.foreach.menu.index == 1} 
     ForeignMusic 
    {/if} 
    {if $smarty.foreach.menu.index == 2} 
     SpecialMusic 
    {/if} 
     {foreach from=$v item=submenu} 
      {$submenu} 
     {/foreach} 
    {/foreach} 

我写了这样的数组,但它不是优化,有没有人给出另一个想法呢?

最后,我可以那样做,

{foreach from=$menu key=k item=v name=menu} 
    {foreach from=$v item=submenu name=sub} 
     {if $smarty.foreach.sub.first} 
      {$submenu} 
     {else} 
      {$submenu} 
     {/if} 
    {/foreach} 
{/foreach}