добавлять активный класс к ссылкам меню, используя php

<div class="menu clearfix"> <ul> <li><a href="./">start</a></li> <li><a href="./?p=rating">rating</a></li> <li><a href="./?p=upload">upload</a></li> </ul> 

Было время, так как я использовал php. Есть ли какой-либо умный способ сделать foreach в php и сделать это меню + «активным» классом по нажатой ссылке. Поэтому, если активная страница «рейтинг», html будет отображать:

  <div class="menu clearfix"> <ul> <li><a href="./">start</a></li> <li><a href="./?p=rating" class="active">rating</a></li> <li><a href="./?p=upload">upload</a></li> </ul> 

благодаря

Solutions Collecting From Web of "добавлять активный класс к ссылкам меню, используя php"

Предполагая, что значение $_GET p будет rating (или любой другой ссылкой в ​​меню, если на то пошло), можно было бы сделать что-то вроде этого:

 <?php echo "<div class=\"menu clearfix\">"; echo "<ul>"; $links = array('rating', 'upload', 'about'); foreach ($links as $link) { $active = ""; if (!empty($_GET['p']) && $link == $_GET['p']){ $active = 'class="active"'; } echo "<li><a href=\"./?p=$link\" $active>$link</a></li>"; } echo "</ul></div>" ?> 

Насколько я понимаю, вы хотите знать, какая ли активна после запроса.

Если это так – вы должны получить $ _GET параметр smth, как $ _GET ['p'].

И делать рендеринг, smth нравится:

 foreach($ul as $li) { if ($_GET['p'] == $li->code) echo 'class="active"'; } 

Например:

 <div class="menu clearfix"> <ul> <?php foreach($ul as $li): ?> <li><a href="<?php echo $li->url;?>" <?php echo $_GET['p']==$li->get ? class="active" : ''?>><?php echo $li->name;?></a></li> <?php endforeach; ?> </ul> 
 <ul class="sub-nav" > <?php $full_name = $_SERVER['PHP_SELF']; $name_array = explode('/',$full_name); $count = count($name_array); $page_name = $name_array[$count-1]; ?> <li><a class="<?php echo ($page_name=='where-to-buy.php')?'active':'';?>" href="where-to-buy.php">WHERE TO BUY</a></li> <li><a class="<?php echo ($page_name=='about.php')?'active':'';?>" href="about.php">ABOUT US</a></li> <li><a class="<?php echo ($page_name=='contact.php')?'active':'';?>" href="contact.php">CONTACT US</a></li> 

Пожалуйста, следуйте ниже, чтобы перейти к демо-версии … https://webdesignerhut.com/active-class-navigation-menu/