我有20个模块页面,这个代码用于将每个页面的活动类添加到侧边菜单中:
$x = 0;
$showoptions = '';
if (checkaccess("cats")) {
if ($_GET['mod'] == "cats") {
$active = 'class="active"';
}
else {
$active = '';
}
$showoptions.= '<li ' . $active . '><a href="?mod=cats"><i class="icon-folder-open"></i><span> categories</span></a></li>';
$active = '';
$x++;
}
if (checkaccess("uploads")) {
if ($_GET['mod'] == "uploads") {
$active = 'class="active"';
}
else {
$active = '';
}
$showoptions.= '<li ' . $active . '><a href="?mod=uploads"><i class="icon-folder-open"></i><span> Uploads</span></a></li>';
$active = '';
$x++;
}
用于打印输出:
#if the user can't access any of the sub option menus hide the main option menu
if($x > 0){
echo $showoptions;
}
我有两个问题:
我的代码是可读的?真的吗? (如果不是更好的方式)
if
条件更好或switch/case
或if/elseif
方法?
我的网址为:http://mydomain . com/admin/?mod=[name]
答案 0 :(得分:0)
既然我们不知道你的checkaccess
做了什么,不知道你的意思是什么。
我这样编码,对我来说更具可读性:
if (checkaccess("cats")) {
$active = '';
if ($_GET['mod'] == "cats") {
$active = ' class="active"';
}
$showoptions.= '<li' . $active . '><a href="?mod=cats"><i class="icon-folder-open"></i><span> categories</span></a></li>';
$x++;
} elseif (checkaccess("uploads")) {
$active = '';
if ($_GET['mod'] == "uploads") {
$active = ' class="active"';
}
$showoptions.= '<li' . $active . '><a href="?mod=uploads"><i class="icon-folder-open"></i><span> Uploads</span></a></li>';
$x++;
}