Чтобы добавить «активный» класс в PHP, вы можете использовать различные методы в зависимости от контекста. Вот несколько часто используемых подходов:
-
Метод условного оператора:
<?php $currentPage = "home"; // Replace "home" with the current page or identifier function isActive($page) { global $currentPage; if ($currentPage === $page) { echo "active"; } } ?> <!-- Example usage in HTML navigation --> <ul> <li class="<?php isActive('home'); ?>"><a href="home.php">Home</a></li> <li class="<?php isActive('about'); ?>"><a href="about.php">About</a></li> <li class="<?php isActive('contact'); ?>"><a href="contact.php">Contact</a></li> </ul>В этом методе вы определяете функцию (
isActive), которая проверяет, соответствует ли текущая страница заданному идентификатору страницы. Если они совпадают, это отражает «активный» класс. -
Метод массива:
<?php $currentPage = "home"; // Replace "home" with the current page or identifier $menuItems = array( "home" => "", "about" => "", "contact" => "" ); $menuItems[$currentPage] = "active"; ?> <!-- Example usage in HTML navigation --> <ul> <li class="<?php echo $menuItems['home']; ?>"><a href="home.php">Home</a></li> <li class="<?php echo $menuItems['about']; ?>"><a href="about.php">About</a></li> <li class="<?php echo $menuItems['contact']; ?>"><a href="contact.php">Contact</a></li> </ul>В этом методе вы создаете массив (
$menuItems) с ключами, представляющими идентификаторы страниц, и значениями, представляющими класс. Вы обновляете значение текущей страницы до «активной» и отображаете соответствующее значение в атрибуте класса HTML. -
Объектно-ориентированный метод:
<?php $currentPage = "home"; // Replace "home" with the current page or identifier class Page { private $currentPage; public function __construct($currentPage) { $this->currentPage = $currentPage; } public function isActive($page) { if ($this->currentPage === $page) { return "active"; } return ""; } } $page = new Page($currentPage); ?> <!-- Example usage in HTML navigation --> <ul> <li class="<?php echo $page->isActive('home'); ?>"><a href="home.php">Home</a></li> <li class="<?php echo $page->isActive('about'); ?>"><a href="about.php">About</a></li> <li class="<?php echo $page->isActive('contact'); ?>"><a href="contact.php">Contact</a></li> </ul>В этом методе вы создаете класс (
Page) с конструктором, который устанавливает текущую страницу, и методом (isActive), который проверяет, соответствует ли текущая страница заданный идентификатор страницы. Он возвращает «активный» класс, если они совпадают.