介绍
这篇文章主要介绍了php运算符优先级的顺序,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
<强> php运算符的优先级强>
php运算符优先级,是描述在计算机运算计算表达式时执行运算的先后顺序。先执行具有较高优先级的运算,然后执行较低优先级的运算例。如,我们常说的先执行相乘和除,再执行加减运算。
<强> php运算符优先级的顺序强>
下表从高到低列出了运算符的优先级。同一行中的运算符具有相同优先级,然后运算符的优先级是运算表达式从左到右。
优先级结合方向运算符附加信息1非结合新代码> <代码>克隆克隆和new2左<代码>(> 3 代码非结合<代码> + +——代码>递增/递减运算符4非结合<代码> ~——(int)(浮动)(字符串)(数组)(对象)(bool) @ 代码>类型5非结合<代码>运算符> 代码类型6右结合<代码> !代码>逻辑操作符7左<代码> */%> 代码算术运算符8左<代码> + -。代码>算术运算符和字符串运算符9左<代码> & lt; & lt;在祝辞> 代码位运算符10非结合<代码> & lt; & lt;=祝辞祝辞=& lt;在代码>比较运算符11非结合<代码>==?===!==> 代码比较运算符12左<代码>和代码>位运算符和引用13左<代码> ^> 代码位运算符14左<代码> | <>/代码位运算符15左<代码>,和代码>逻辑运算符16左<代码> | |> 代码逻辑运算符17左<代码> ?:> 代码三元运算符18右<代码>=+=-=*=/=?%=,=|=^=& lt; & lt;=祝辞祝辞=> 代码赋值运算符19左<代码>和代码>逻辑运算符20左<代码> xor 代码>逻辑运算符21左<代码>或代码>逻辑运算符22左<代码>、代码>多处用到<强>举例说明强>
对具有相同优先级的运算符,左结合方向意味着将从左向右求值,右结合方向则反之。对于无结合方向具有相同优先级的运算符,该运算符有可能无法与其自身结合。
举例说,在PHP中1 & lt;2比;1是一个非法语句,而1 & lt;=1==1则不是。因为& lt;=比==优先级高。
& lt; php ? $ 5=3 * 3%;//(3 * 3)% 5=4 美元=true ?0:真的吗?1: 2;//(真的吗?0:真正的)?1:2=2 美元=1; $ b=2; a=b +=3美元;//a=美元($ b +=3)→=5,b=5美元//混合+ +和+生产未定义的行为 美元=1; 回声+ + + + +美元;//打印4或5 祝辞;
所以在我们非常清楚PHP运算优先级的前提下,最好运算符的书写的时候,还是要以圆括号来标记优先级,这样可读性强,也是一个良好的编程习惯。