写点什么

【web 开发基础】PHP 快速入门(11)-PHP 运算符之运算符的优先级

作者:迷彩
  • 2022-10-25
    广东
  • 本文字数:1384 字

    阅读完需:约 5 分钟

前言

PHP 开发基础开速入门系列目录:

  1. 【web 开发基础】php 开发基础快速入门 (1)-PHP 介绍及开发环境快速安装和基本使用介绍

  2. 【web 开发基础】php 开发基础快速入门 (2)-PHP 的程序开发

  3. 【web 开发基础】php 开发基础快速入门 (3)-PHP 程序符号标记和程序注释的使用及空白符详解

  4. 【web 开发基础】php 开发基础快速入门 (4)-PHP 常量详解

  5. 【web 开发基础】PHP 快速入门(5)-PHP 运算符之算术运算符和字符串运算符详解

  6. 【web 开发基础】PHP 快速入门(6)-PHP 运算符之赋值运算符详解

  7. 【web 开发基础】PHP 快速入门(7)-PHP 运算符之比较运算符详解

  8. 【web 开发基础】PHP 快速入门(8)-PHP 运算符之逻辑运算符详解

  9. 【web 开发基础】PHP 快速入门(9)-PHP 运算符之位运算符详解

  10. 【web 开发基础】PHP 快速入门(10)-PHP 其他运算符详解


到这里,PHP 的基本语法也讲得差不多了,认真学习的同学应该对 PHP 有了大致的了解。后面接下来就是分支语句的介绍。


运算符的优先级

在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。


优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。

相同优先级中,按结合顺序计算。大多数运算是从左至右计算,只有三个优先级是从右至左结合的,它们分别是单目运算符、条件运算符、赋值运算符。

基本的优先级需要记住:

指针最优,单目运算优于双目运算。如正负号。

先算术运算,后移位运算,最后位运算。请特别注意:2 << 3 + 4 && 6 等价于 (2 << (3 + 4))&&6

逻辑运算最后计算。

所谓的运算符的优先级,是指在表达式中哪一个运算符应该先计算,就像我们小学学习算术的四则混合运算一样:“先乘除,后加减”。例如:表达式 1+6*5 的结果是 31 而不是 35,是因为乘号(*)的优先级比加号(+)的优先级高。必要时可以使用括号来强制改变优先级,比如:表达式:(1+6)*5 的值为 35.如果运算符优先级相同,则使用从左往右的左联顺序。运算符的优先级具体如下图

注:表中同一行中的运算符具有相同的优先级,此时它们的结合方向决定求值顺序

PHP 会根据上图中的运算符的优先级确定表达式的求值顺序,同时还可以引用小括号“()”来控制运算顺序,任何小括号内的运算将最优先进行。在以后的程序开发中尽量使用小括号来控制改变优先级,上表无需死记硬背,多用自然就熟悉。平时最好使用小括号改变表达式的优先级更加易于懂


什么是表达式

在介绍运算符的时候一直在说表达式,那在 PHP 表达式是什么?下面咱们具体了解一下:

表达式是 PHP 中最重要的基石,在 PHP 中,几乎所有编写的任何代码都可以看作一个表达式,通常是变量、常量和运算符号的组合。简单却最精确的定义一个表达式的方式就是“任何有值的东西”。以下为一些常见的表达式:

  1. 最基本的表达式是常量和变量,例如:赋值语句$a = 1;

  2. 稍微复杂的表达式就是函数,比如:$a = foo();

  3. 使用算术运算符中的前后自增和自减也是表达式.如:$a++, $a--,++$a, --$a;

  4. 常用的表达式类型是:"比较表达式", 如: $a>4; $a==5;$a>=5&&$a<=11

  5. 组合的运算赋值也是常用的表达式, 如: $a += 3; $b *= 4; $c = ($a += 5)

  6. 还有三元运算符(? : )也是一种常用表达式: $a = ($b>4 ? $c=4 : $c=11)


发布于: 刚刚阅读数: 3
用户头像

迷彩

关注

我的工作是常年写bug|公众号:编程架构之美 2020-06-18 加入

修bug的菜鸟~公众号:“互联网有啥事”已改名为“编程架构之美”

评论

发布
暂无评论
【web 开发基础】PHP 快速入门(11)-PHP 运算符之运算符的优先级_表达式_迷彩_InfoQ写作社区