
这段代码首先尝试从 `$_SERVER['REQUEST_URI']` 中获取 URL,如果不存在,则尝试从 `$_SERVER['SCRIPT_NAME']` 中获取。然后,使用 `pathinfo()` 函数提取文件名。
比较文件名并添加 css 类:
接下来,在你的导航链接中,使用 PHP 条件语句来检查当前文件名是否与链接对应的文件名匹配。如果匹配,则添加一个特定的 CSS 类,例如 "current-menu active"。
<a href="team.php" class="list-group-item list-group-item-action py-2 ripple bg-button<?php if (stripos($thisFile, 'team.php') !== false) {echo ' current-menu active';} ?>">
<i class="fas fa-users fa-fw me-3"></i><span>Our team</span>
</a>这段代码检查 $thisFile 变量中是否包含 "team.php"。如果包含,则将 "current-menu active" 类添加到 <a> 标签中。
如果你的网站结构包含子目录,并且导航链接指向这些子目录中的文件,则需要使用此方法。
获取当前 URL:
立即学习“PHP免费学习笔记(深入)”;
与方法一类似,首先获取当前页面的 URL:
<?php $thisUrl = (isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : (isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] : null)); $thisFile = pathinfo($thisUrl , PATHINFO_BASENAME); ?>
精确匹配根目录文件,匹配子目录文件:
<!-- 精确匹配根目录下的 team.php -->
<a href="team.php" class="list-group-item list-group-item-action py-2 ripple bg-button<?php if ('team.php' === $thisFile)) {echo ' current-menu active';} ?>">...</a>
<!-- 匹配 support 目录下的 team.php -->
<a href="support/team.php" class="list-group-item list-group-item-action py-2 ripple bg-button<?php if (stripos($thisUrl, 'support/team.php') !== false) {echo ' current-menu active';} ?>">...</a>对于根目录下的文件,使用精确匹配 === 确保只有完全匹配的文件才会被高亮。对于子目录下的文件,使用 stripos() 函数检查 URL 是否包含特定的子目录路径和文件名。
以上两种方法都会在匹配的链接中添加 CSS 类。你需要定义这些类的样式,以实现高亮效果。例如:
.current-menu {
border-left: 5px solid #blue; /* 添加左边框 */
font-weight: bold; /* 加粗字体 */
}
.active {
background-color: #f0f0f0; /* 更改背景颜色 */
}你可以根据自己的设计需求自定义这些 CSS 样式。
通过以上步骤,你就可以轻松地使用 PHP 在你的网站导航菜单中高亮显示当前页面,提升用户体验。
以上就是使用 PHP 高亮显示当前页面导航菜单的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号