我正在尝试将if语句添加到下面函数的li标签中,但我似乎无法使命名正确...我在这里添加了一个“ADD CODE”注释,我相信它应该去。
我想要的是if语句检查$ pageID和$ thispage是否相同.....如果是这样,请将class =“current”添加到li标签中..否则不要添加什么,但我似乎无法正确的语法。
if ($thisPage==$pageID) echo " class=\"current\"";
<?php
function buildMenu($parent, $menu, $level = 1)
{
$menulist = "";
if (isset($menu['parents'][$parent]))
{
$menulist .= "<ul";
if ($level == 1)
{
$menulist .= " class=\"sf-menu\"";
}
$menulist .= ">\n";
foreach ($menu['parents'][$parent] as $itemId)
{
if(!isset($menu['parents'][$itemId]))
{
$menulist .= " <li "ADD CODE HERE" ><a href='".$menu['items'][$itemId]['menuURL']."'>".$menu['items'][$itemId]['menuName']."</a></li> \n";
}
if(isset($menu['parents'][$itemId]))
{
$menulist .= " <li "ADD CODE HERE" ><a href='".$menu['items'][$itemId]['menuURL']."'>".$menu['items'][$itemId]['menuName']."</a>";
$menulist .= buildMenu($itemId, $menu, $level+1);
$menulist .= "</li> \n";
}
}
$menulist .= "</ul> \n";
}
return $menulist;
}?>
答案 0 :(得分:1)
根据您之前的评论,仅当class="current"
等于<li>
时,才会将$pageID
添加到$thisPage
代码:
$menulist .= '<li';
if ($pageID == $thisPage)
$menulist .= ' class="current"';
$menulist .= '><a href="'.$menu['items'][$itemId]['menuURL'].'">'.$menu['items'][$itemId]['menuName'].'</a>';
此代码应替换以下行:
$menulist .= " <li "ADD CODE HERE" ><a href='".$menu['items'][$itemId]['menuURL']."'>".$menu['items'][$itemId]['menuName']."</a>";
答案 1 :(得分:0)
我不确定我明白你想要做什么。你是说这个:
$menulist .= " <li ";
echo ($pageID==$thisPage) ? ' class="current" ' : " ";
$menulist .=" ><a href='".$menu['items'][$itemId]['menuURL']."'>".$menu['items'][$itemId]['menuName']."</a>";
这会反映出你在LI中有“添加代码”部分的“Boogey Woogey”吗?