九月
23
2015

PHP运算符优先级

写在前面

运算符的优先级不能不说重要,但是记忆起来还是觉得有些麻烦。每次拿不准的时候就去查找手册,也稍微显得有些麻烦,所以还是把这个收录到自己的PHP博客中,作为常规PHP资料储备吧。

运算符优先级

下表按照优先级从高到低列出了运算符。同一行中的运算符具有相同优先级,此时它们的结合方向决定求值顺序。

编号结合方向运算符备注
01clone newclone 和 new
02[array
03++ -- ~ (int) (float) (string) (array) (object) (bool) @类型和递增/递减
04instanceof类型
05!逻辑运算符
06* / %算术运算符
07+ - .算术运算符 和 字符串运算符
08<< >>位运算符
09== != === !== <>比较运算符
10&位运算符和引用
11^位运算符
12|位运算符
13&&逻辑运算符
14||逻辑运算符
15?:三元运算符
16= += -= *= /= .= %= &= |= ^= <<= >>= =>赋值运算符
17and逻辑运算符
18xor逻辑运算符
19or逻辑运算符
20,多处用到

尽管 = 比其它大多数的运算符的优先级低,PHP 仍旧允许类似如下的表达式:if (!$a = foo()),在此例中 foo() 的返回值被赋给了 $a

非特殊注明博文为 爱PHP吧(www.iphp8.com)原创内容,转载请注明原文地址:http://www.iphp8.com/?post=54

评论

发表评论:

(选填)

(选填)