php stripos 如果页面 ==

php stripos if page ==

我有如下脚本:

<li><p class="navbar-text"><a href="/" <?php if (stripos($_SERVER['REQUEST_URI'],'/') !== false) {echo 'class="active"';} ?>>Forside</a></p></li>
<li><p class="navbar-text"><a href="/medlemmer" <?php if (stripos($_SERVER['REQUEST_URI'],'/medlemmer') !== false) {echo 'class="active"';} ?>>Medlemmer</a></p></li>
<li><p class="navbar-text"><a href="/butik">Ansøg</a></p></li>
<li><p class="navbar-text"><a href="/" style="color:white;">Køb</a></p></li>

我正在使用 Bootstrap 并且我将这段代码放在一个单独的文件中,我从

<?php
   $path = $_SERVER['DOCUMENT_ROOT'];
   $path .= "/header.php";
   include_once($path);
?>

<?php if (stripos($_SERVER['REQUEST_URI'],'/') !== false) {echo 'class="active"';} ?> 惹恼了我。所有其他页面都按它们应该的方式运行,但是这个“/”斜杠只占用服务器上的每个页面。

我可以做 /index,但在地址栏中看起来很糟糕。

我该怎么做才能让某些内容仅在前端回显 (index.php)?

parse_url() 可能对您有帮助:-

<li><p class="navbar-text"><a href="/" <?php if (parse_url($_SERVER['REQUEST_URI'])['path'] =='/') {echo 'class="active"';} ?>>Forside</a></p></li>
<li><p class="navbar-text"><a href="/medlemmer" <?php if (parse_url($_SERVER['REQUEST_URI'])['path'] =='/medlemmer') {echo 'class="active"';} ?>>Medlemmer</a></p></li>
<li><p class="navbar-text"><a href="/butik">Ansøg</a></p></li>
<li><p class="navbar-text"><a href="/" style="color:white;">Køb</a></p></li>

一个例子:-

<?php 
    $url = "http://localhost/";
    echo parse_url($url)['path'].'<br/>';
    $url = "http://localhost/medlemmer";
    echo parse_url($url)['path'];
 ?>

输出:- https://eval.in/556980