我试图使用if语句测试验证。
if (($red == "1") && ($blue = "1") ) { $green = "hello"; }
在此语句运行$blue = 0
之前。
运行此... $blue
后更改为1
。
任何想法为什么?
答案 0 :(得分:6)
您使用=
代替==
:
if (($red == "1") && ($blue = "1") ) { $green = "hello"; }
^^^
结果(假设&&
的左侧返回true)$blue
被分配 "1"
。
这是最常见的编程错误之一!作为防止程序员发生的一种方法,将常量放在==
的左侧:
1 == $blue
因此,如果您错误地以=
代替==
而写作:
1 = $blue
由于无法分配常量,因此会出现语法错误。
答案 1 :(得分:2)
如果(($ red ==“1”)&&($ blue ==“1”)){$ green =“hello”; }
//你的代码是($ blue =“1”)'='是php比较中的赋值运算符'=='
答案 2 :(得分:1)
您正在分配$blue = 1
而非比较这就是为什么$ blue为1
答案 3 :(得分:0)
这是因为您使用=
。使用$blue == "1"
。
答案 4 :(得分:0)
在下一个结论中,你的等于唱歌是不正确的 if(($ red ==“1”)&&($ blue ==“1”)){$ green =“hello”; }
答案 5 :(得分:0)
是的,请使用==
代替=
我会更进一步说,也许你应该在比较时把文字放在左边,以避免这种情况。
赞if(1 == $blue)
而不是if($blue == 1)
答案 6 :(得分:0)
使用 == 或 === 代替 = 。
'='是赋值运算符,条件运算符 == 或 === < / p>
if (($red == "1") && ($blue == "1") )
{
$green = "hello";
}