php中逻辑操作符&和&&的异同.
在php中有5种算术操作符(+ - * / %),6种赋值操作符(+= -= *= /= %= .=),8种比较操作符(=== < > <= >= != <> !==),6种的逻辑操作符(如&&、 ||、 &、 |、 ! 。其中逻辑与&可写成and,逻辑或|写成or),以及一些其他操作符(错误控制操作符@、 执行操作符反引号"--不是单引号、字符串操作符.与.=、递增/递减操作符++/--、三元操作符?:)。
关于操作符优先级,可以参考相关文档。
php中&和&&的异同
- <?php
- $a=10;
- if($a>4 && (++$a>10))
- {
- }
-
- echo $a;
- ?>
-
- <?php
- $a=10;
- if($a>4 and (++$a>10))
- {
- }
-
- echo $a;
- ?>
-
- **************************************************************
-
- <?php
- $a=10;
- if($a>4 && (++$a<10))
- {
- }
-
- echo $a;
- ?>
-
- <?php
- $a=10;
- if($a>4 & (++$a<10))
- {
- }
-
- echo $a;
- ?>
-
- *********************************************************
-
- <?php
- $a=10;
- if($a<4 && (++$a>10))
- {
- }
-
- echo $a;
- ?>
-
- <?php
- $a=10;
- if($a<4 & (++$a>10))
- {
- }
-
- echo $a;
- ?>
-
- *******************************************************************
-
- <?php
- $a=10;
- if($a<4 && (++$a<10))
- {
- }
-
- echo $a;
- ?>
-
- <?php
- $a=10;
- if($a<4 & (++$a<10))
- {
- }
-
- echo $a;
- ?>
-
- *******************************************************************
-
- <?php
-
- $a = (false && sktest());
- $b = (true || sktest());
- $c = (false and sktest());
- $d = (true or sktest());
-
-
- $e = false || true;
- $f = false or true;
- var_dump($e, $f);
-
-
- $g = true && false;
- $h = true and false;
- var_dump($g, $h);
-
- ?>