php的运算符
php的表达式所谓表达式,就是任何有值的东西
php的算术运算符
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343384sQ9y.jpg
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_13393433875mP1.jpg
14位啊!
案例:
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343387vB8W.jpg
++和--
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343394LX23.jpg
左加+=
左减-=
左乘*=
左除/=
左取模%=
比较运算符
例子
名称
结果
$a == $b
等于
TRUE,如果 $a 等于 $b。
$a === $b
全等
TRUE,如果 $a 等于 $b,并且它们的类型也相同。(PHP 4 引进)
$a != $b
不等
TRUE,如果 $a 不等于 $b。
$a$b
不等
TRUE,如果 $a 不等于 $b。
$a !== $b
非全等
TRUE,如果 $a 不等于 $b,或者它们的类型不同。(PHP 4 引进)
$a < $b
小与
TRUE,如果 $a 严格小于 $b。
$a > $b
大于
TRUE,如果 $a 严格 $b。
$a = $b
大于等于
TRUE,如果 $a 大于或者等于 $b。
案例:
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343394vxwp.jpg
!=和 !==说明
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343397dn14.jpg
逻辑元算符
例子
名称
结果
$a and $b
And(逻辑与)
TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b
Or(逻辑或)
TRUE,如果 $a 或 $b 任一为 TRUE。
$a xor $b
Xor(逻辑异或)
TRUE,如果 $a 或 $b 任一为 TRUE,但不同时是
! $a
Not(逻辑非)
TRUE,如果 $a 不为 TRUE。
$a && $b
And(逻辑与)
TRUE,如果 $a 与 $b 都为 TRUE。
$a || $b
Or(逻辑或)
TRUE,如果 $a 或 $b 任一为 TRUE。
短路或
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343401IPJv.jpg
ok!a=11 b=7
短路与
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343401zWqE.jpg
a=11 b=7
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343401bAF1.jpg
ok!a=12 b=8
面试题:and &&都表示逻辑与,区别是
主要体现在优先级上,
and的优先级
and
字符串运算符
可以看出,当2个变量(基本数据类型)用 . 连接的时候,就表示把它们的内容拼接。
类型运算符
基本语法
instanceof 用于确定一个 PHP 变量是否属于某一类 class 的实例:
面向对象开发中可能要用
class Dog{};
class Cat{};
$cat1= new Cat;
//var_dump($cat1 instanceof Cat);
//在实际开发中,我们可能需要去判断某个变量是否是某个类型
if($cat1 instanceof Cat){
echo '$cat1是一只猫';
}
运算符优先级的说明
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343405axxk.jpg
下表从高到低列出了运算符的优先级 同一行中的运算符具有相同优先级,
此时它们的结合方向决定求值顺序
结合方向
运算符
附加信息
非结合
clone new
clone 和 new
左
[
array()
非结合
++ --
递增/递减运算符
非结合
~ - (int) (float) (string) (array) (object) (bool) @
类型
非结合
instanceof
类型
右结合
!
逻辑操作符
左
* / %
算术运算符
左
+ - .
算术运算符和字符串运算符
左
>
位运算符
非结合
< <= > >=
比较运算符
非结合
== != === !==
比较运算符
左
&
位运算符和引用
左
^
位运算符
左
|
位运算符
左
&&
逻辑运算符
左
||
逻辑运算符
左
? :
三元运算符
右
= += -= *= /= .= %= &= |= ^= >=
赋值运算符
左
and
逻辑运算符
左
xor
逻辑运算符
左
or
逻辑运算符
左
,
多处用到
http://lerdor.blog.运维网.com/attachment/201206/10/5251572_1339343408OWnJ.jpg
and的优先级比=低
页:
[1]