if语句验证页面ID

时间:2014-02-04 19:31:05

标签: php variables

我正在尝试将一个class =“active”语句添加到动态li元素中,如果它满足pageID等于名为thisPage的变量的要求,但我的语法搞砸了。我的问题是如何将if语句添加到字符串的中间?我想我有下面的精神...... 感谢

<? ...........
  $menu .= "\t<li" . ' if $thisPage=={$pageID} echo class="active"' . "><a href=\"{$pval['link']}\">{$pval['menuTitle']}</a></li>\n";
...........
?>

3 个答案:

答案 0 :(得分:1)

您可以使用三元

$menu .= '<li'.($thisPage==$pageID?' class="active"':'').'></li>';

答案 1 :(得分:1)

试试这个

$menu .= "\t<li".($thisPage==$pageID ? ' class="active"' : '').'><a href="'.$pval['link'].'">'.$pval['menuTitle'].'</a></li>'."\n";

虽然我建议使用sprintf让事情变得更清晰

$menu .= sprintf('\t<li%s><a href="%s">%s</a></li>',
                     ($thisPage==$pageID ? ' class="active"' : ''),
                     $pval['link'],
                     $pval['menuTitle']);

答案 2 :(得分:0)

最简单的方法是使用这样的ternary operator

$menu .= "\t<li" . $thisPage=={$pageID} ? 'class="active"' : '' . "><a href=\"{$pval['link']}\">{$pval['menuTitle']}</a></li>\n";