Php条件对html不起作用

时间:2013-07-22 14:10:44

标签: php html if-statement

我目前只想在某个页面上显示链接。网站上的架构本身就在index.php?menu=<pagename>之上。所以我想我可以简单地使用:

<?php 
      echo $_GET["menu"];
      if($_GET["menu"] = "mMenu-Point") : 
?>
         <a href="www.google.ch">Test</a>
<?php 
      endif; 
?>

执行htm-code。但是,无论“菜单”的值是什么,似乎都会执行代码。我通过回声测试了这个,奇怪的是我得到了正确的值。

我希望你能解释一下为什么这不起作用。

非常感谢您的时间和精力!

5 个答案:

答案 0 :(得分:3)

尝试

if($_GET["menu"] == "mMenu-Point") : 

目前您正在设置(=)$_GET["menu"]而不是比较它(==)

答案 1 :(得分:3)

赋值运算符(=)用于为变量,数组元素或对象属性赋值

等于运算符(==)用于比较两个值或表达式。它用于比较数字,字符串,布尔值,变量,对象,数组或函数。

您在此处使用了赋值运算符=。你需要

if($_GET["menu"] == "mMenu-Point") : 

希望这有帮助!

答案 2 :(得分:1)

您使用赋值运算符(等于1)您需要使用比较运算符(==)或甚至(===完全匹配)

http://php.net/manual/en/language.operators.comparison.php

所以你需要使用:

if ($_GET["menu"]) == "mMenu-Point") :

为了与字符串进行比较,我建议使用完全匹配运算符===

答案 3 :(得分:0)

Double&#34; =&#34; :

if($_GET["menu"] == "mMenu-Point")

答案 4 :(得分:0)

if($_GET["menu"] == "mMenu-Point") :

tow“=”pls