<?php 
global $db,$params;
$menuRoot = $db->get_results("select * from ".TB_PREFIX."menu where deep = 0 and isHidden=0 and dtLanguage='".$_SESSION[TB_PREFIX.'dtLanguage']."' order by ordering");
$strarr= explode('||',$str);
foreach ($menuRoot as $o)
{
$submenuRoot=$db->get_results("select * from ".TB_PREFIX."menu where parentid=".$o->id." and isHidden=0 order by ordering asc");
echo '<li><a href="'.get_root_path().'/html/'.$o->menuName.'/">'.$o->title.'</a>';
if($submenuRoot=='')
{
echo '</li>';
}
else
{
echo '<ul>';
foreach($submenuRoot as $osub)
echo '<li><a href="'.get_root_path().'/html/'.$osub->menuName.'/">'.$osub->title.'</a></li>';
echo '</ul>';
echo '</li>';
}
}
?>以上的代码输出结果是:<li>
  <a href="1">1</a>
  <ul>
    <li><a href="1.1">1.1</a></li>
    <li><a href="1.2">1.2</a></li>
    <li><a href="1.3">1.3</a></li>
  </ul>
</li><li>
  <a href="2">2</a>
  <ul>
    <li><a href="2.1">2.1</a></li>
    <li><a href="2.2">2.2</a></li>
    <li><a href="2.3">2.3</a></li>
  </ul>
</li><li>
  <a href="3">3</a>
  <ul>
    <li><a href="3.1">3.1</a></li>
    <li><a href="3.2">3.2</a></li>
    <li><a href="3.3">3.3</a></li>
  </ul>
</li>我想在最后一个菜单上加上class,即:<li>
  <a href="1">1</a>
  <ul>
    <li><a href="1.1">1.1</a></li>
    <li><a href="1.2">1.2</a></li>
    <li><a href="1.3">1.3</a></li>
  </ul>
</li><li>
  <a href="2">2</a>
  <ul>
    <li><a href="2.1">2.1</a></li>
    <li><a href="2.2">2.2</a></li>
    <li><a href="2.3">2.3</a></li>
  </ul>
</li><li>
  <a href="3" class="menuEnd">3</a>
  <ul>
    <li><a href="3.1">3.1</a></li>
    <li><a href="3.2">3.2</a></li>
    <li><a href="3.3">3.3</a></li>
  </ul>
</li>请求高手帮我修改PHP代码…………

解决方案 »

  1.   

    $i=0;
    foreach ($menuRoot as $o)
    {   
        $i++;
        $submenuRoot=$db->get_results("select * from ".TB_PREFIX."menu where parentid=".$o->id." and isHidden=0 order by ordering asc");
        if($i==count($menuRoot))
            echo '<li><a href="'.get_root_path().'/html/'.$o->menuName.'/"  class="menuEnd">'.$o->title.'</a>';
        else
            echo '<li><a href="'.get_root_path().'/html/'.$o->menuName.'/">'.$o->title.'</a>';
        if($submenuRoot=='')
        {
            echo '</li>';
        }
        else
        {
            echo '<ul>';
            foreach($submenuRoot as $osub)
            echo '<li><a href="'.get_root_path().'/html/'.$osub->menuName.'/">'.$osub->title.'</a></li>';
            echo '</ul>';
            echo '</li>';
        }
    }
      

  2.   

    $menuRoot = $db->get_results("select * from ".TB_PREFIX."menu where deep = 0 and isHidden=0 and dtLanguage='".$_SESSION[TB_PREFIX.'dtLanguage']."' order by ordering");
    $strarr= explode('||',$str);
    $num = count( $menuRoot );
    foreach ($menuRoot as $k => $o)
    {
        $submenuRoot=$db->get_results("select * from ".TB_PREFIX."menu where parentid=".$o->id." and isHidden=0 order by ordering asc");
        if( ($k + 1 ) == $num )
        {
            echo '<li><a href="'.get_root_path().'/html/'.$o->menuName.'/" class='menuEnd'>'.$o->title.'</a>';
        }
        else
        {
            echo '<li><a href="'.get_root_path().'/html/'.$o->menuName.'/">'.$o->title.'</a>';
        }
        if($submenuRoot=='')
        {
            echo '</li>';
        }
        else
        {
            echo '<ul>';
            foreach($submenuRoot as $osub)
            echo '<li><a href="'.get_root_path().'/html/'.$osub->menuName.'/">'.$osub->title.'</a></li>';
            echo '</ul>';
            echo '</li>';
        }
    }
      

  3.   

    原理就是获得数组长度,再循环外面定义一变量,在里面让变量自增。当变量等于长度是,输出带class='XXX'的串