如何在 PHP 包含文件中动态排除当前页面的导航项

本文介绍如何通过判断当前请求 URL 动态控制 include() 的执行,从而在侧边栏(如 aside.php)中智能隐藏与当前页面重复的导航链接,纯 PHP 实现,无需额外语言或框架。 本文介绍如何通过判断当前请求 url 动态控制 `include()` 的执行,从而在侧边栏(如 `aside.php`)中智能隐藏与当前页面重复的导航链接,纯 php 实现,无需额外语言或框架。在构建多页网站时,常将公共区域(如侧边栏、导航菜单)抽离为独立 PHP 文件(如 aside.php),再通过 <?php include('aside.php'); ?> 统一引入。但若该侧边栏包含指向当前页面的链接(例如在「隐私政策」页仍显示「隐私政策」按钮),不仅冗余,还可能引发 UX 问题或 SEO 重复内容风险。解决思路是:不在 aside.php 内部做判断,而是在 include 调用处前置逻辑控制是否加载------即"条件包含"。这更符合职责分离原则,也避免在被包含文件中依赖全局状态(如 _SERVER)导致复用性下降。以下为推荐实现方式:\requestPath = parse_url(_SERVER\['REQUEST_URI'\], PHP_URL_PATH);// 去除开头斜杠并标准化(可选)cleanPath = ltrim(requestPath, '/');// 定义需在对应页面中隐藏侧边栏的页面标识(支持路径或文件名)excludeOnPages = 'privacy', 'contact', 'about-us';// 判断当前路径是否匹配需排除的页面(例如 /privacy.php 或 /privacy/)if (!in_array(cleanPath, excludeOnPages) && !in_array(cleanPath . '.php', excludeOnPages)) { include('aside.php');}?>? 优势说明: 标贝科技 标贝科技-专业AI语音服务的人工智能开放平台

相关推荐
李兆龙的博客1 分钟前
从一到无穷大 #94:ClickHouse TimeSeries——时间线组织与 Prometheus 兼容性
数据库
冰暮流星2 分钟前
事务的四个特性(ACID)详解
数据库
byte轻骑兵13 分钟前
时序数据库选型全指南|大数据工业场景Apache IoTDB落地实操
大数据·数据库·人工智能·apache iotdb
xieliyu.16 分钟前
JVM 垃圾回收机制详解:从标记过程、回收算法到垃圾收集器
java·jvm·笔记·java-ee
外收内放19 分钟前
Python与AI应用(项目开发实战:AI智能伴侣第一版)
python·学习·ai编程
绘梨衣54720 分钟前
慢SQL排查手册
python·sql
Sirens.24 分钟前
MySQL数据库:JDBC编程
数据库·mysql
troy12825 分钟前
告别 Copilot?Codex、Claude Code、DeepSeek Harness、Kimi、ChatGPT 哪个更适合本地化部署,更有性价比?
人工智能·python·开源软件
IvanCodes33 分钟前
Python 文件操作(十二):文件与目录的读写
开发语言·python
蓝速科技43 分钟前
会议室门牌签到功能选型与落地指南丨蓝速科技
大数据·运维·数据库·人工智能·科技