向PHP菜单添加类

向PHP菜单添加类,php,Php,我有一个小型php网站,它有一个菜单,可以通过include_once获得。我需要一个HTML类添加到每个页面的当前菜单项 因此,如果用户单击链接并转到该页面,则新页面将加载带有class=“current”的新菜单项。我该怎么做呢?假设您这样写菜单: <ul> <li><a href="link1.com?menu=1"> Link1 </a></li> <li><a href="link2.com?menu=1"&

我有一个小型php网站,它有一个菜单,可以通过include_once获得。我需要一个HTML类添加到每个页面的当前菜单项


因此,如果用户单击链接并转到该页面,则新页面将加载带有class=“current”的新菜单项。我该怎么做呢?

假设您这样写菜单:

<ul>
<li><a href="link1.com?menu=1"> Link1 </a></li>
<li><a href="link2.com?menu=1"> Link2 </a></li>
<li><a href="link3.com?menu=1"> Link3 </a></li>
</ul>
这里有一个很好的老php4风格的解决方案:-p

<?php
//you get which link was clicked
if(isset($_GET['menu']) $menu = $_GET['menu'];
else $menu = 1;

$1 = $2 = $3 = ""; //you create 3 empty strings
switch($menu){ //you assign the correct string with your css class name
case "1": $1 = 'class="current"';break;
case "2": $2 = 'class="current"';break;
case "3": $3 = 'class="current"';break;
}
?>
//echo the variables into the menu anchors ( <?=$1?> is equivalent to  <? echo $1; ?> )
<ul> 
<li><a href="link1.com?menu=1" <?=$1?> >Link1</a></li>
<li><a href="link2.com?menu=2" <?=$2?> >Link2</a></li>
<li><a href="link3.com?menu=3" <?=$3?> >Link3</a></li>
</ul>

<代码>很难没有看到任何代码,请考虑在菜单中添加HTML,以及如何在PHP中生成它;另外,如何告知当前页面($\u GET array或其他)