我有一些代码还没有工作,在我调试之前,我想确保这个语法或方法确实可以工作,并且实际上只有在最后一个条件为真时才执行 mysql_query。
另外,这是一种相对安全的做法吗?我找不到与此相关的任何内容,我想有人把它用英文写出来会帮助我解决这个问题。
if($var1 == $var2) {$new = 1;}
if($vara == $varb) {$old = 1;}
if($new = 1 && $old = 1) { mysqli_query($somequery);}
由于单个 =,这将不起作用。
去做:
if($var1 == $var2) {$new = 1;}
if($vara == $varb) {$old = 1;}
if($new == 1 && $old == 1) { mysqli_query($somequery);}
或者,理想情况下:
if ($var1 == $var2 && $vara == $varb) {
mysqli_query($somequery);
}
停止诸如if ($var = 1)
拼写错误之类的顶级提示 - 切换比较并将常量放在首位。
如果你写if ($var = 1)
,那么 $var 变为 1 并且总是正确的,但是如果你写if (1 = $var)
你会得到一个错误,这正是你想要的(如果你使用 string 也会发生同样的情况if ("yes" = $var)
。
一直以来,我们一直把变量放在第一位,但最好反过来做。