我的导航栏有链接,这些链接根据当前页面的基本URL是活动的。
PHP函数:
function Match($requestUri){
$current_file_name = basename($_SERVER['REQUEST_URI'], ".php");
if ($current_file_name == $requestUri)
return "active";
}链接:
echo "<li class=".Match("cms").'nav-item'."><a href='/cms/index.php'>Home</a>"我得到的是:
<li class="activenav-item"><a href="/cms/index.php">Home</a></li>什么应该是:
<li class="active nav-item"><a href="/cms/index.php">Home</a></li>如何在active之后添加空格
发布于 2015-08-08 07:51:07
您只需在字符串文本中包含空格:
echo "<li class='".Match("cms")." nav-item'><a href='/cms/index.php'>Home</a>"
^即使Match返回一个空字符串,这也是有效的HTML --然后浏览器忽略了前面的空间。
请注意,您也混淆了单引号和双引号。如果像这样构造一段HTML,最好对construct分隔符使用双引号,对HTML属性使用单引号(因为这允许变量解析)。
发布于 2015-08-08 07:56:03
作为一种公平的选择,您还可以在返回语句中包含空格。
if ($current_file_name == $requestUri)
return "active ";
}然而,你确定你真的得到了你认为得到的结果吗?这里的这一行引号不正确。
echo "<li class=".Match("cms").'nav-item'."><a href='/cms/index.php'>Home</a>"你应该这样说:
echo "<li class='".Match("cms")."nav-item'><a href='/cms/index.php'>Home</a>";https://stackoverflow.com/questions/31890928
复制相似问题