加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用php在菜单项上设置活动类

发布时间:2020-12-13 22:48:25 所属栏目:PHP教程 来源:网络整理
导读:我有一个由 ul li组成的简单菜单了.元素和class =“active”就位以标记当前页面. $_get []传递一个变量,通过url选择特定页面:?pg = PAGE. 我是一个相当新的PHP,仍在学习.这工作得很好,但我觉得应该有一个更简单和更短的方式. ul class="nav" li ?php if ($
我有一个由< ul>< li>组成的简单菜单了.元素和class =“active”就位以标记当前页面. $_get []传递一个变量,通过url选择特定页面:?pg = PAGE.

我是一个相当新的PHP,仍在学习.这工作得很好,但我觉得应该有一个更简单和更短的方式.

<ul class="nav">
  <li <?php if ($_GET['pg'] == "PAGE1") { echo "class="active""; } ?>><a href="?pg=PAGE1">FIRST PAGE</a></li>
  <li <?php if ($_GET['pg'] == "PAGE2") { echo "class="active""; } ?>><a href="?pg=PAGE2">SECOND PAGE</a></li>
</ul>

解决方法

<?php
    $pages = array(
        'PAGE1' => 'FIRST PAGE','PAGE2' => 'SECOND PAGE');
?>

<ul class="nav">
  <?php foreach ($pages as $pageId => $pageTitle): ?>
  <li <?=(($_GET['pg'] == $pageId) ? 'class="active"' : '')?>><a href="?pg=<?=$pageId?>"><?=$pageTitle?></a></li>
  <?php endforeach; ?>
</ul>

http://php.net/manual/en/control-structures.foreach.php

不要重复自己 – 两者都非常相似,唯一的区别在于页面ID和标题.一旦你有两个以上的页面,这种方法将非常有用.

尽量保持PHP和HTML尽可能分开 – 一旦您决定将它们保存在单独的文件中(有时您会这样做),这将使您的生活更轻松.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读