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产生的结果不同?
and和&&都是逻辑与,但是优先级不一样。