我试图使用if语句测试验证.
if (($red == "1") && ($blue = "1") ) { $green = "hello"; }
Run Code Online (Sandbox Code Playgroud)
在此声明运行之前$blue = 0
.
在我运行之后...... $blue
改变了1
.
有什么想法吗?
您正在使用以下=
代替==
:
if (($red == "1") && ($blue = "1") ) { $green = "hello"; }
^^^
Run Code Online (Sandbox Code Playgroud)
结果(假设&&
返回的左侧为true)$blue
被赋值 "1"
.
这是最常见的编程错误之一!! 作为一种防止程序员发生的方法,将常量放在==
as 的左侧:
1 == $blue
Run Code Online (Sandbox Code Playgroud)
所以,如果你错误地写=
了最后写代替==
:
1 = $blue
Run Code Online (Sandbox Code Playgroud)
您会收到语法错误,因为您无法分配常量.