本文介绍如何通过 PHP 动态控制 include() 的执行时机,实现在侧边栏(如 aside.php)中自动隐藏当前页面对应的导航链接,无需额外语言或框架,纯 PHP 即可实现。 本文介绍如何通过 php 动态控制 `include()` 的执行时机,实现在侧边栏(如 `aside.php`)中自动隐藏当前页面对应的导航链接,无需额外语言或框架,纯 php 即可实现。在构建多页面网站时,常使用 <?php include('aside.php'); ?> 统一加载侧边栏导航,以保证结构一致性和维护便利性。但若侧边栏中包含指向当前页面的链接(例如在 privacy.php 中仍显示“隐私政策”按钮),不仅冗余,还可能引发 UX 问题(如重复点击、视觉混淆)。理想方案是:让 aside.php 智能识别当前请求路径,并跳过渲染与之匹配的菜单项。最简洁可靠的实现方式,是在 包含动作前进行条件判断,而非在 aside.php 内部做逻辑处理——这样既保持 aside.php 的纯粹性(专注展示),又提升主页面的可控性与可读性。? 推荐方案:在 include 外层加路由过滤逻辑将原本简单的 include 替换为带路径判断的条件语句:<?php// 解析当前请求路径(去除查询参数和锚点,仅保留基础 URI)$uriPath = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);$currentPage = trim($uriPath, '/'); // 如 '/contact' → 'contact';'/' → 空字符串,可设为 'home'// 定义需在对应页面中隐藏的导航项(键名即页面标识符)$excludeOnPages = [ 'privacy' => ['privacy'], 'contact' => ['contact'], 'about-us' => ['about-us'], '' => ['home'] // 首页可映射为 'home'];// 获取当前页面标识(支持 .php 后缀自动剥离)$baseName = pathinfo($currentPage, PATHINFO_FILENAME) ?: $currentPage;// 若当前页面有定义需排除的项,则不包含整个 aside.phpif (!isset($excludeOnPages[$baseName])) { include('aside.php');}?>? 说明:此写法比原始答案中 explode('?', ...) 更健壮——它使用 parse_url() 正确分离路径与查询参数,并通过 pathinfo() 兼容 contact.php 和 contact/ 等常见 URL 形式。立即学习“PHP免费学习笔记(深入)”; 灵办AI 免费一键快速抠图,支持下载高清图片
如何在 PHP 包含文件中动态排除当前页面对应的导航项
张小明
前端开发工程师
网盘下载体验革命:LinkSwift直链解析工具全面解析
网盘下载体验革命:LinkSwift直链解析工具全面解析 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘…
Stable Yogi Leather-Dress-Collection 作品集:AI生成的皮革配饰创意设计
Stable Yogi Leather-Dress-Collection 作品集:AI生成的皮革配饰创意设计 最近在玩一个挺有意思的AI模型,叫Stable Yogi Leather-Dress-Collection。听名字就知道,它专门搞皮革服饰和配饰的设计。我花了不少时间用它生成了一大堆作品&#x…
零流程税时代:效率取代规模,成为终极竞争壁垒
前八篇文章,我们从流程税的概念起源,到9个量化公式,再到全价值链税点地图,最后给出了OPC降税的四大实战路径。你可能已经在自己的一人公司或小团队中开始应用这些方法,并且看到了初步成效。那么,一个更宏大…
Ostrakon-VL-8B零售AI落地:从模型加载到终端报告生成的端到端流程详解
Ostrakon-VL-8B零售AI落地:从模型加载到终端报告生成的端到端流程详解 1. 项目概览:像素特工零售扫描终端 这是一个基于Ostrakon-VL-8B多模态大模型开发的零售场景专用Web交互终端。与传统工业级UI不同,我们创新性地采用了高饱和度的像素艺…
R 4.5机器学习服务化实战(Shiny+plumber+Docker三重加固):从本地训练到K8s集群一键部署
第一章:R 4.5机器学习服务化部署全景概览R 4.5 版本在语言核心、内存管理与并行支持方面显著增强,为机器学习模型的服务化部署提供了更稳健的运行时基础。随着 {plumber}、{fastapi}(通过 reticulate 调用)及 {shiny} serverless …
Intv_ai_mk11 对话逻辑深度剖析:惊艳的多轮对话与上下文记忆效果
Intv_ai_mk11 对话逻辑深度剖析:惊艳的多轮对话与上下文记忆效果 1. 开场:当AI真正听懂你的言外之意 "帮我订一张明天去上海的机票"——"好的,请问需要几点出发?"——"算了,还是改成高铁吧…