if语句,将值与=进行比较

时间:2013-11-21 18:35:36

标签: php mysql sql if-statement

这个if语句是否正确?

if ($row->totMED="0" or $row->MEDC="0"){
  $avgMed='N/A';
} 
else {
  $avgMed='Medical: $'.($row->totMED / $row->MEDC);
}

1 个答案:

答案 0 :(得分:4)

您正在寻找:$row->totMED == "0"$row->totMED === "0"

松散的平等

==是松散的等式,意味着比较值的值相似。例如,所有这些陈述都是正确的:

0 == false //true because 0 is like nothing
"" == false //true because an empty string is like nothing
1 == true //true because 1 is something

"abc" == true 可能是真的,具体取决于...事情。在PHP中它现在是真的,在JavaScript中它不是。这是松散平等的问题。检查过程可能很复杂,结果可能是意外的。严格的平等是好的。

严格平等

===或严格相等,在值和类型中表示相同。所有这些都是真的:

1 === 1
true === true
'abc' === 'abc'

这些都是假的:

1 === "1" // first value is integer and second is a string
true === "true" //first value is a boolean and second is a string

基本赋值运算符

单个=是赋值运算符,它将左侧的变量设置为右侧的值。使用=时,您要设置变量的值,而不是比较两个值。

$row->totMED = "0"表示$row->totMED现在的值为“0”。