4

当我写

$char='a' 
if (!empty($char)){
   echo 'true';
} else {
   echo 'false';
}

我是真的,但是当:

if ($char='a' && !empty($char)){
   echo 'true';
} else {
   echo 'false';
}

为什么我得到'假'?

4

3 回答 3

2

因为第二种方式是一样的:

if ($char = ('a' && !empty($char))){
   echo 'true';
} else {
   echo 'false';
}

&&具有比 更高的优先级=,因此$char将是false

于 2012-09-01T12:22:42.180 回答
0

因为你在写if($char = 'a' && !empty($char)),你正在使用赋值运算符,使用==,你应该得到正确的结果。

于 2012-09-01T12:23:18.830 回答
0

因为单有单等号。

if ($char='a'

确实

if ($char=='a'
于 2012-09-01T12:26:58.073 回答