php问题,关键字and和&&的作用是一样的吗?

php问题,关键字and和&&的作用是一样的吗?
<?php
$q = 16;
$r=7;
$s=17;
$t=17;
$u=($q>$r) and ($s>$t);
$v=($q>$r) && ($s>$t);
$w=($q>$r) or ($s>$t);
$x=($q>$r) || ($s>$t);
$y=($q>$r) xor ($s>$t);
$z=($q<$r) and ($s>$t);
$a=($q>$r);
$b=!$a;
$c=($q>$r) and ($s<>$t);
printf ("($q>$r) and ($s>$t) = %d <br/>",$u);
printf ("($q>$r) && ($s>$t) = %d <br/>",$v);
printf ("($q>$r) or ($s>$t) = %d <br/>",$w);
printf ("($q>$r) || ($s>$t) = %d <br/>",$x);
printf ("($q>$r) xor ($s>$t) = %d <br/>",$y);
printf ("($q<$r) and ($s>$t) = %d <br/>",$z);
printf ("($q>$r) and ($s>$t) = %d <br/>",$u);
printf ("($q>$r) and ($s<>$t) = %d <br/>",$c);
printf ("($q>$r)= %d <br/>",$a);
printf ("!a = %d <br/>",$a);
?>

产生的结果

(16>7) and (17>17) = 1
(16>7) && (17>17) = 0
(16>7) or (17>17) = 1
(16>7) || (17>17) = 1
(16>7) xor (17>17) = 1
(16<7) and (17>17) = 0
(16>7) and (17>17) = 1
(16>7) and (17<>17) = 1
(16>7)= 1
!a = 1

其中17>17应该返回f吧,用and怎么会返回1?
请问楼下大侠,为什么$u和$v产生的结果不同?

PHP手册里对运算符的解释已经很清楚了。运算符是有优先级之分的,
and和&&都是逻辑与,但是优先级不一样。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-31
一样

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网