2011-11-26 44 views
1

几个问题在这里我不确定问题是什么,但是如何设置我的代码,它在呈现uls,lis和h2s的萤火虫中看起来很奇怪。任何想法为什么,我也需要一些建议,如何解决我得到的错误是由一些类别没有子页面引起的。在这种情况下,如果他们没有子页面,我不希望我的代码做任何事情,只是将它传递过来。具有用于foreach循环的UL

kansasoutlawwrestling.com/site-map

<?php 
echo "<pre>"; 
print_r($categoriesArray); 
echo "</pre>"; 
if((isset($categoriesArray)) AND ((!empty($categoriesArray))||($categoriesArray !== NULL))) 
{ 
if(count($categoriesArray) <= 0) 
{ 
    echo "There are no content pages on this site!"; 
} 
else 
{ 
    foreach ($categoriesArray as $row) 
    { 
     echo "<h2>".stripslashes($row['name'])."</h2>"; 
     echo "<ul>"; 
     foreach ($row['children'] as $row2) 
     { 
      echo "<li><a href=\"".$row2['link_url']."\">".stripslashes($row2['link_name'])."</a></li>"; 
      if (count($row2) > 0) 
      { 
       echo "<ul>"; 
       foreach ($row2['child_pages'] as $row3) 
       { 
        echo "<li><a href=\"".$row3['link_url']."\">".stripslashes($row3['link_name'])."</a></li>"; 
       } 
       echo "<ul>"; 
      } 
     } 
     echo "</ul>"; 
    } 
    } 
} 
else 
{ 
    echo "There are no content pages on this site!"; 
} 
?> 

编辑:任何其他的想法,我来试试呢?

+0

我不明白这一点:如果(计数(2行$)> 0)。因为你回显$ row2 ['link_url']这个if永远不会是假的(显然它可以是array(),但在这种情况下$ row2 ['link_url']将给出一个空结果) –

+0

发布你的数组以及 –

+0

该数组在页面上。 –

回答

1

你可以做;

 
if(count($row2['child_pages']) < 1) { 
    continue; 
} 

希望它可以帮助