Php 修改以删除初始ul标签
如何调整此代码,以便从生成的列表中删除第一个ul标签?甚至有可能做到这一点吗 这就是我想要得到的结果:Php 修改以删除初始ul标签,php,Php,如何调整此代码,以便从生成的列表中删除第一个ul标签?甚至有可能做到这一点吗 这就是我想要得到的结果: <ul> <--remove this initial tag <li></li> <li></li> </ul> <ul> <li></li> <li></li> </ul> 设置除雾器。请注意,首先将$添加到函数
<ul> <--remove this initial tag
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
</ul>
设置除雾器。请注意,首先将$添加到函数变量中,然后对底部的每一次调用都添加FALSE
function buildMenu($parent, $menu, $first = TRUE)
{
$menulist = "";
if (isset($menu['parents'][$parent]))
{
$menulist .= $first ? "" : "<ul>\n";
foreach ($menu['parents'][$parent] as $itemId)
{
if(!isset($menu['parents'][$itemId]))
{
$menulist .= " <li><a href='".$menu['items'][$itemId]['menuURL']."'>".$menu['items'][$itemId]['menuName']."</a></li> \n";
}
if(isset($menu['parents'][$itemId]))
{
$menulist .= " <li><a href='".$menu['items'][$itemId]['menuURL']."'>".$menu['items'][$itemId]['menuName']."</a>";
$menulist .= buildMenu($itemId, $menu, FALSE);
$menulist .= "</li> \n";
}
}
$menulist .= "</ul> \n";
}
return $menulist;
}?>
函数构建菜单($parent,$menu,$first=TRUE)
{
$menulist=“”;
如果(isset($menu['parents'][$parent]))
{
$menulist.=$first?”:“\n”;
foreach($menu['parents'][$parent]作为$itemId)
{
如果(!isset($menu['parents'][$itemId]))
{
$menulist.=“\n”;
}
如果(isset($menu['parents'][$itemId]))
{
$menulist.=“- ”;
$menulist.=buildMenu($itemId,$menu,FALSE);
$menulist.=“
\n”;
}
}
$menulist.=“
\n”;
}
返回$menulist;
}?>
更换
$menulist .= "<ul>\n";
$menulist.=“\n”;
借
$menulist.=strlen($menulist)?“\n”:”;
删除ul
元素会创建无效的HTML?没错,我的计划是手动添加初始ul标记以及一些css的类标记。我尝试将其直接添加到上面的代码中,但它将class标记添加到函数生成的每个ul标记中。。。。。选项2是找到一种方法,将class标记添加到初始ul标记中。这将始终将“\n”
附加到$menulist
中,因为该行不在循环中。它在if
语句中。
$menulist .= "<ul>\n";
$menulist .= strlen($menulist) ? "<ul>\n":"";