将特定的类/ID 应用到菜单上的当前页面 (PHP)

2023-12-14

我有一个这样的菜单:

<div id="blahblah" style="blahblah">
<a href="http://domain.com/folder/biography"><img style="blahblah" src="blahblahblahblah"></a>
<a href="http://domain.com/folder/contacts"><img style="blahblah" src="blahblahblahblah"></a>
<a href="http://domain.com/folder/gallery"><img style="blahblah" src="blahblahblahblah"></a>
<a href="http://domain.com/folder/dontknow"><img style="blahblah" src="blahblahblahblah"></a>
</div>

我想要有一些东西可以自动将 class="current" 添加到我当前所在的页面。链接(如您在上面的代码中看到的)类似于domain.com/folder/biography 或domain.com/文件夹/联系人,因此没有 .php/.html 等。

我尝试过:

<div id="blahblah" style="blahblah">
<a <?php if (strpos($_SERVER['PHP_SELF'], 'biography')) echo 'class="current"';?> href="http://domain.com/folder/biography"><img style="blahblah" src="blahblahblahblah"></a>
<a <?php if (strpos($_SERVER['PHP_SELF'], 'contacts')) echo 'class="current"';?> href="http://domain.com/folder/contacts"><img style="blahblah" src="blahblahblahblah"></a>
...
...
</div>

但它不起作用...带 strops 的解决方案似乎可行,可能我做错了..:P


你应该:

  1. 检查结果strpos() with !== false.
  2. Use $_SERVER['REQUEST_URI']而不是$_SERVER['PHP_SELF'].
  3. 将代码包装在函数内。

像这样的东西:

<?php
function get_current($name) {
  if (strpos($_SERVER['REQUEST_URI'], $name) !== false)
    echo 'class="current"';
}
?>

<div id="blahblah" style="blahblah">
  <a <?php get_current('biography') ?> href="http://domain.com/folder/biography"><img style="blahblah" src="blahblahblahblah"></a>
  <a <?php get_current('contacts') ?> href="http://domain.com/folder/contacts"><img style="blahblah" src="blahblahblahblah"></a>
  ...
  ...
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将特定的类/ID 应用到菜单上的当前页面 (PHP) 的相关文章

随机推荐

  • 获取对话框中的文本

    我可以使用什么 Windows API 函数来获取对话框中的文本 例如 如果我有handle错误消息对话框 如何获取显示的错误消息 如果我正确理解你的问题 你的问题就很简单了 打开Spy 来自视觉工作室Tools菜单 然后按Ctrl F接收
  • 在 Identity Server 4 中使用引用令牌传递附加数据

    我在身份服务器上使用引用令牌 并希望将一些附加数据传递给客户端 我知道如何通过在我的配置文件服务中设置声明来使用 JWT 执行此操作 但我找不到使用引用令牌执行类似操作的方法 理想情况下 我想将我的数据作为令牌 json 结果中的额外参数传
  • 可以在 Sublime Text 3 构建系统中在 python 2 和 3 之间切换吗? (视窗)

    我当前的所有编码都在 python 3 中 我是通过 Anaconda 包安装的 但是我需要在 python 2 中同时处理一些代码 有没有一种方法可以在 Sublime 中添加构建系统 以便我可以在两者之间流畅地切换 我安装了 pytho
  • 如何使用 CAMERA2 以正确的方向保存图像

    这是我的相机片段 其中我使用以下命令打开相机TextureView 相机正在以正确的方向捕获图像 但捕获的图像未以正确的方向保存 public class Camera2BasicFragment extends Fragment impl
  • 使用 Excel 公式过滤列表

    我在 Excel 工作表的 A 列中有一个公司列表 在 B 列中有该公司的特征 在另一个 Excel 工作表中 我想获取第一个工作表中的公司列表 并按其中一个特征进行筛选 该特征可能会发生变化 因此我需要一个 Excel 公式来执行此操作
  • ASP.NET Membership C# - 如何比较现有密码/哈希

    我已经研究这个问题有一段时间了 我需要将用户输入的密码与会员数据库中的密码进行比较 密码经过哈希处理并带有盐 由于缺乏文档 我不知道盐是否附加到密码中 然后对其创建方式进行哈希处理 我无法让这个匹配 从函数返回的哈希值永远不会与数据库中的哈
  • 属性 getter 作为函数

    是否可以访问属性的 getter 以便将其传递给类似的函数filter map reduce 例如 假设我有一个User entity struct User let firstName String let lastName String
  • Scanner 类跳过空白

    我正在使用嵌套Scanner循环从字符串行 来自文本文件 中提取数字 如下所示 String str testString Scanner scanner new Scanner str while scanner hasNext Stri
  • java中方法的最大大小?

    我了解到java中一个方法的最大大小是64k 如果超过 我们将收到编译器警告 例如 代码太大而无法编译 那么我们可以说这是java内存量这么小的一个缺点吗 我们可以增加这个大小限制吗 或者真的有可能增加吗 关于这个方法的大小还有更多的想法吗
  • 在 Powershell 中获取给定日期的 ISO 8601 一年中的第几周

    在搜索如何获取时ISO 8601 一年中的一周在 PowerShell 中 我偶然发现这个问题是针对 C 的 尽量不要用 PowerShell 代码来解决这个问题 下面是我的 Powershell 端口 基于用户6887101 的回答 我会
  • 如何隐藏 Google 地图 iOS SDK 上的默认标签

    我在用GoogleMapSDK v1 8在我最新的 iOS 应用程序上 是否可以显示法线贴图 kGMSTypeNormal 没有任何默认标签 例如 隐藏以下部分或全部内容 城市标签 道路标签 公共交通图标等 我希望有办法做到这一点 请指导我
  • 使用 maven-remote-resources-plugin 并指定 resourcesDirectory

    我试图在使用时覆盖默认资源目录 src main resources maven 远程 资源 插件 然而 下面示例中的指定值似乎没有被考虑在内 如果有人能给我一些指示 我将不胜感激
  • 套接字线程和 PyGTK

    我正在尝试编写一个即时消息程序 基本的用户界面即将完成 我正在研究消息的接收部分 我有一个 UI 类和一个线程 Receive Socket 类 每次 Received Socket 类的套接字接收到消息时 它都会执行 gobject id
  • C++ 递归类型定义是否可行,特别是我可以在 T 的定义中放置一个向量 吗?

    对于我的一个项目 我真正想做的是这个 将其简化到最低限度 struct Move int src int dst struct MoveTree Move move std vector
  • 获取YAML路径下的所有节点

    我有一个如下所示的 YAML 文件 Main topofhouse x 276 4375 y 71 0 z 60 5 yaw 290 7768 pitch 35 400017 2ndfloor x 276 5 y 67 0 z 60 5 y
  • typescript:错误 TS2693:“Promise”仅指类型,但在此处用作值

    我正在尝试对我的 AWS Lambda 使用 Typescript 但在使用 Promise 的地方都会收到以下错误 error TS2693 Promise only refers to a type but is being used
  • 从非 UI 线程更新 ObservableCollection

    我正在开发 Windows 8 应用商店应用程序 我有一个计时器 每两分钟调用一次委托并发出异步网络请求 生成的数据将添加到绑定到 UI 元素的 observablecollection 中 这样做会引发异常 因为正在非 UI 线程上修改
  • Flexbox、CSSGrid 的奇怪行为

    我有这样的情况 https jsfiddle net johnsam rdtva2fq On Chrome效果很好 请看这个 它开始 参见 FIRST 和 LAST btn 好的 On Safari它没有 对于 iPad iPhone 也是
  • 如何检查 Java 8 Stream 是否为空?

    我如何检查是否Stream为空 如果不是 作为非终端操作抛出异常 基本上 我正在寻找与下面的代码等效的内容 但没有具体化中间的流 特别是 在终端操作实际消耗流之前不应进行检查 public Stream
  • 将特定的类/ID 应用到菜单上的当前页面 (PHP)

    我有一个这样的菜单 div a href http domain com folder biography img src blahblahblahblah a a href http domain com folder contacts