我希望能够提取文件的名称和我当前正在使用的网址,设置两个变量(文件名,文件夹),并针对数组进行检查。根据值的不同,我们将“活动”类设置为<李>显示该页面是该部分的一部分。
我之前从未真正使用过数组,但我做了一些研究,认为他们是最合乎逻辑的方法。我设置了一个包含文件夹名称的数组,以及应该在那里的页面
$navPages = array ( "band" => array ("biography","index"),
"music" => array ("discography","lyrics","meanings",),
"site" => array ("about","team")
);
所以上面,文件夹/ band /应该有tradition.php和index.php。所以现在,我需要一种方法来查看该数组并进行匹配,这样如果我访问“site.com/band/biography.php”,我就可以检查数组并说“是的,你”请点击此页面。现在将“有效”课程应用于“乐队”< LI>。
到目前为止,我可以获取文件名
$page = basename($_SERVER['PHP_SELF'], ".php");
现在,我无法弄清楚如何检查每个数组以查看我是否在正确的页面中。我试过了
if(in_array($page, $navPages[band])) {
$class = 'active';
}
这很有效,但我认为必须有办法同时检查所有3个阵列,'乐队','音乐','网站'。所以我想看看文件名是否在数组中,但我还需要确保它在正确的位置。例如,index.php可以在任何文件夹中,如果index.php在'band'数组中,我只想要一个真实的语句,而不仅仅是整个$ navPages数组。
有人可以帮我解决这个问题吗?我试着尽可能详细,让我知道是否有我遗漏的东西。
此外,这是我第一次尝试这样的导航部分。所以,如果你发现我错过了一些关于我需要做什么工作的逻辑,那么任何提示都将不胜感激,谢谢!
答案 0 :(得分:0)
请勿指定键band
:
if(in_array($page, $navPages)) {
$class = 'active';
}
这将查找整个数组中的当前页面,如果是,则条件将该类设置为当前。