php - 用php动态编写页面标题和事件类

标签 php html xhtml

一段时间以来,我一直在使用以下代码动态编写 html 页面标题并向菜单项添加事件类。这仍然是实现这一目标的一个很好的原因,还是有更好/更智能/最佳的方法来实现同样的目标?

<?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='contact.php'? 'class="active"' : '');?>

菜单示例

<ul id="nav">
<li><a href="index.php"  target="_parent" <?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='index.php'? 'class="active"' : '');?>><span>Home</span></a></li>
<li><a href="services.php"  target="_parent" <?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='services.php'? 'class="active"' : '');?><?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='services-landlords.php'? 'class="active"' : '');?><?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='services-sellers.php'? 'class="active"' : '');?><?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='services-tennants.php'? 'class="active"' : '');?>><span>Our Services</span></a></li>
<li><a href="for-sale.php" target="_parent" <?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='sales.php'? 'class="active"' : '');?>><span>Sales</span></a></li>
<li><a href="to-let.php" target="_parent" <?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='lettings.php'? 'class="active"' : '');?>><span>Lettings</span></a></li>
<li><a href="register.php"  target="_parent" <?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='register.php'? 'class="active"' : '');?><?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='register-thanks.php'? 'class="active"' : '');?>><span>Register</span></a></li>
<li><a href="contact.php"  target="_parent" <?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='contact.php'? 'class="active"' : '');?>><span>Contact Us</span></a></li>
</ul>

页面标题示例

<?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='services.php'? 'Services' : '');?>
<?php echo (basename($_SERVER['SCRIPT_FILENAME'])=='services-landlords.php'? 'Services for Landlords' : '');?>

最佳答案

你可以把它放到一个函数中。

function menuIsActive ($filename)
{
    echo (basename($_SERVER['SCRIPT_FILENAME']) == $filename)
    {
        echo ' class="active" ';
    }
}

例如

<li><a href="contact.php" target="_parent" <?php menuIsActive("contact.php"); ?>>Contact Us</a></li>

关于php - 用php动态编写页面标题和事件类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2788208/

相关文章:

php - Laravel 中使用 'LIKE' 查询进行数组到字符串的转换

php - 允许用户在 PHP 中投票一次

PHP/MySQL 帖子类别

html - &lt;!--[if gte IE 8]--> 没有像我预期的那样表现

html - 最大宽度 img 无法响应

php - 如何动态命名生成的 PHP 表格单元格

php - 如何在 PHP 中关闭浏览器后保持 session 打开?

html - 具有等宽标签的居中对齐表单

css - 有没有关于 "When to use display:block when :inline and when :inline-block"的指南,为什么?

调查问卷的 Javascript 单选按钮计数和计算