与我的菜单搏斗-为什么这个坏了这个<;李>;php是打印的,而不是执行的?
我对这个有点陌生,这个问题让我抓狂与我的菜单搏斗-为什么这个坏了这个<;李>;php是打印的,而不是执行的?,php,html,css,Php,Html,Css,我对这个有点陌生,这个问题让我抓狂 上的标记“=$active[0]”正在打印而不是执行 感谢任何指点 ?> echo($url); ?> 很可能您的服务器未配置为支持短标记。尝试用替换它们。您也可以启用短标记,但不建议这样做。检查PHP指令short\u open\u tag。如果它可能关闭了,这就是没有执行的原因 然而,使用它们是非常困难的,用替换可能是PHP的short\u open\u tag指令被禁用 这实际上是一件好事,因为它们会导致可移植性较差的代码,因此不应使用
echo($url);
?>
很可能您的服务器未配置为支持短标记
。尝试用
替换它们。您也可以启用短标记,但不建议这样做。检查PHP指令short\u open\u tag
。如果它可能关闭了,这就是没有执行的原因
然而,使用它们是非常困难的,用
替换可能是PHP的short\u open\u tag
指令被禁用
这实际上是一件好事,因为它们会导致可移植性较差的代码,因此不应使用
我建议改为使用
。大刀阔斧
<li <? echo $active[1]..
好的,很好,修复了短标记语法。但是现在没有打印到?嗯,现在我认为是一个变量正在被拆分并打印为一个数组?“class=”“”的每个字母都在每个 中打印。。我是否错误地定义了$active?@swinhoe,尝试初始化$active
如$active=array()代码>这把整个菜单搞砸了。给我一个“未定义的偏移”错误。我想我不希望它成为一个数组,因为当前正在打印的是数组字符串中的一个字母。。有什么想法吗?@swinhoe,这是因为数组没有所有的值,而你需要所有的值。您确实希望将其作为一个数组,要解决此问题,您可以:1)使用空字符串初始化它2)使用@
3)存储值而不是键,例如,使用case…:$array[]='about_buttons'
然后
问题是代码正在打印字符串中的每个字母,而不是将字符串作为html中的变量打印而不是
echo($url);
?>
<nav>
<ul class="clearfix">
<li id="first" <?= $active[0] ?> <a href="index.php" class="Bold">Home</a></li>
<li <?= $active[1] ?> <a href="about.php" class="Bold">About</a></li>
<li <?= $active[2] ?> <a href="solutions.php" class="Bold">Solutions</a></li>
<li <?= $active[3] ?> <a href="services.php" class="Bold">Services</a></li>
<li <?= $active[4] ?> <a href="sustainability.php" class="Bold">Sustainability</a></li>
<li <?= $active[5] ?> <a href="healthcare.php" class="Bold">Healthcare</a></li>
<li <?= $active[6] ?> <a href="/blog/" class="Bold">Blog</a></li>
<li id="last" <?= $active[7] ?> <a href="contact.php" class="Bold">Contact</a></li>
</ul>
</nav>
<li <? echo $active[1]..