PHP_SELF在localhost上返回's'字符串

时间:2014-02-19 13:34:50

标签: php localhost

我正在使用此代码突出显示导航中的活动链接,但代码无效。当我echo $_SERVER['PHP_SELF']时,它将's'字符串作为localhost的输出。请帮忙,这里有什么问题?

P.S。此外,当我检查apache error.log时,它显示:

[Wed Feb 19 18:28:08.671229 2014] [:error] [pid 1353] [client 127.0.0.1:57968] PHP Warning:  Illegal string offset 'PHP_SELF'

我正在使用Ubuntu 13.10。

<li <?php if($_SERVER['PHP_SELF'] == "index.php"){ echo 'class="active"';}?> > <a href="index.php"><i class="fa fa-dashboard"></i> Dashboard</a></li>

2 个答案:

答案 0 :(得分:3)

正如您在上一条评论中提到的,您在header.php文件中使用了PHP_SELF,因此调用了PHP_SELF,它返回该文件名。因此,请在每个代码顶部的index.php文件中使用它:

<?php $filename = basename($_SERVER['PHP_SELF']);?>

然后在header.php文件中使用$ filename变量。可能这会有所帮助。如果有效,请告诉我。

答案 1 :(得分:0)

<li <?php if(substr($_SERVER['PHP_SELF'], 1) == "index.php"){ echo 'class="active"';}?> > <a href="index.php"><i class="fa fa-dashboard"></i> Dashboard</a></li>

检查这是否适合您。