php学习----运算符
PHP
1、运算符
加减乘除与数学运算无异
但PHP的赋值运算符有两种,分别是:
(1)“=”:把右边表达式的值赋给左边的运算数。它将右边表达式值复制一份,交给左边的运算数。换而言之,首先给左边的运算数申请了一块内存,然后把复制的值放到这个内存中。
(2)“&”:引用赋值,意味着两个变量都指向同一个数据。它将使两个变量共享一块内存,如果这个内存存储的数据变了,那么两个变量的值都会发生变化。
比较运算符主要是用于进行比较运算的,例如:等于、全等、不等、大于、小于。在PHP中常用的比较运算符如下表:
(“?:”)三元运算符也是一个比较运算符,对于表达式(expr1)?(expr2):(expr3),如果expr1的值为true,则此表达式的值为expr2,否则为expr3。
逻辑运算符主用是进行逻辑运算的,例如:逻辑与、逻辑或、逻辑异或、逻辑非等,在PHP中常用的逻辑运算符如下表:(点击看大图)
我们可以从投票的角度来理解逻辑运算:
1、逻辑与:要求所有人都投票同意,才会通过某协议;
2、逻辑或:只要求一个人投票同意就行;
3、逻辑异或:只能有且只能有一个人投票同意;
4、逻辑非:某个人要反对,但是通过逻辑非,使其反对无效;
“与”和“或”有两种不同形式运算符的原因是它们运算的优先级(就是运算的有限顺序,比如我们小学的时候学习四则运算,加减乘除混合在一起啦,优先计算乘除,再计算加减)不同。
字符串连接运算符是为了将两个字符串进行连接,PHP中提供的字符串连接运算符有:
(1)连接运算符(“.”):它返回将右参数附加到左参数后面所得的字符串。
(2)连接赋值运算符(“.=”):它将右边参数附加到左边的参数后。
运算符优先级
下表按照优先级从高到低列出了运算符。同一行中的运算符具有相同优先级,此时它们的结合方向决定求值顺序。
说明:左 = 从左到右,右 = 从右到左。
结合方向 | 运算符 | 附加信息 |
---|---|---|
无 | clone new | clone 和 new |
左 | [ | array() |
右 | ++ -- ~ (int) (float) (string) (array) (object) (bool) @ | 类型和递增/递减 |
无 | instanceof | 类型 |
右 | ! | 逻辑运算符 |
左 | * / % | 算术运算符 |
左 | + – . | 算术运算符和字符串运算符 |
左 | << >> | 位运算符 |
无 | == != = ! <> | 比较运算符 |
左 | & | 位运算符和引用 |
左 | ^ | 位运算符 |
左 | | | 位运算符 |
左 | && | 逻辑运算符 |
左 | || | 逻辑运算符 |
左 | ? : | 三元运算符 |
右 | = += -= *= /= .= %= &= |= ^= <<= >>= => | 赋值运算符 |
左 | and | 逻辑运算符 |
左 | xor | 逻辑运算符 |
左 | or | 逻辑运算符 |
左 | , | 多处用到 |
运算符优先级中,or 和 ||,&& 和 and 都是逻辑运算符,效果一样,但是其优先级却不一样。
实例
<?php // 优先级: && > = > and // 优先级: || > = > or b = false; a or c); // 这里的 为值,而不是值d = b; var_dump(这里的d 就是 boolean 值 true ?>
以上实例输出结果为:
int(3) bool(true)
括号的使用
我们通过括号的配对来明确标明运算顺序,而非靠运算符优先级和结合性来决定,通常能够增加代码的可读性。
实例
<?php // 括号优先运算 b = 2; d = b * d; echo "\n"; a + c; // 使用括号 echo $e; echo "\n"; ?>
以上实例输出结果为:
7 9
转载于:https://www.cnblogs.com/zwshi/p/10181465.html
php学习----运算符相关推荐
- c语言运算符ppt,C语言知识学习运算符.ppt
C语言知识学习运算符.ppt 第三章,C语言运算符,回顾,变量和常量的含义 熟悉基本数据类型 - int.char.float 和 double 使用算术运算符 理解类型转换 熟练使用 scanf 和 ...
- C语言学习——运算符详解
C语言学习--运算符详解 一.学习运算符 (1)运算对象的数目 C语言中,运算符的运算对象可以是一个,称单目运算符:运算对象也可以是两个,称双目运算符:运算对象还可以是三个,称三目运算符. (2)运算 ...
- c语言中变量赋值使用什么运算符,C语言基础学习运算符-赋值运算符
简单赋值 在C语言里,运算符=并不表示相等,而是一个赋值运算符.这意味着,符号=的左边该是一个可修改的变量名,而右边是赋给该变量的值. 如下程序语句: i = i+1; 在数学上,该等式无法成立.而作 ...
- java fx 按钮长度_JAVA FX语法学习----运算符
赋值运算符 "=" 是您将遇到的最常用的运算符.使用该运算符可以将其右侧的值赋给其左侧的操作数: result = num1 + num2; days = ["Mon&q ...
- C语言再学习 -- 运算符与表达式
分三部分来讲 一.左值与右值 参看:左值与右值 首先我们需要理解左值和右值的定义: 左值指的是如果一个表达式可以引用到某一个对象,并且这个对象是一块内存空间且可以被检查和存储,那么这个表达式就可以做为 ...
- Java学习----运算符与表达式
一.运算符 1.算术运算符 + - * / % ++ -- public class Test7 {public static void main(String[] args) {i ...
- python 复数幂_python基础学习——运算符(1)
python非常显著的一个特点是计算能力超级强,支持各种计算,本文主要介绍几大常用的运算符在python中的应用方法:包括7大运算符:算术运算符.比较运算符.赋值运算符.逻辑运算符.成员运算符.身份运 ...
- python 基础学习--运算符集合
注:标黄的均为目前不需要掌握的,不常用 算术运算符 + - * divmod(3,2) ----------输出结果为(1,1) 此方法可以得到3/2的整数和余数 / 除法 % 取余 ** ...
- C语言学习——运算符
1. 算数运算符 + - * /(除) %(取余数) 除法 / 的运算结果和运算对象的数据类型有关.被除数与除数都是int,则商也是int:若商有小数,则截取小数部分.被 ...
最新文章
- 生态伙伴 | 小鹅通企学院入驻飞书,助力企业一键打造自己的企业大学
- 数据分析之全国热门景点分析
- 终于有人把 Spring 循环依赖讲清楚了!
- TypeScript - Interfaces
- python pyqt5 线程 暂停 重启_如何在PyQT5中暂停/播放线程?
- 拜登政府冻结加密钱包规则以待审查 加密市场或迎来转机
- (第九章)多表查询之all,any
- 解读2015之大数据篇:大数据的黄金时代
- 【直观理解】粒子滤波 原理及实现
- 领导问“BUG解决了没有”,吾一听就知道完蛋了
- java se win10_Win10 JAVASE的下载和环境变量设置
- Java小游戏之飞翔的小鸟
- 小程序商城框架源码 小程序源码带前端+后台+数据库
- c语言定义数组变量初始化为0,C语言数组初始化
- Twaver-HTML5基础学习(9)HTML节点(HTMLNode)
- 【语义分割项目实战】一种特殊的数据增强方式:copy-paste实战复现
- EC-R3588SPC八核8K人工智能工业主机
- vscode自定义括号颜色
- C语言-小黄鸭☞循环结构while
- 拼多多开店做些什么有什么要求?开店的流程是什么?
热门文章
- Geoffrey Hinton大佬经典的《神经网络机器学习》,附PPT下载链接!
- 《Python编程从入门到实践》记录之range、min、max、sum函数
- 神经网络瘦身:SqueezeNet
- 当常规的算法都山穷水尽之后,你可以试试python中的SMOTE算法
- java 自带写日志包_jdk自带的日志工具实操总结(亲测有效)
- eks volumn s3_云顶棋弈研习社 游玩S3赛季 PBE注册、下载与汉化教程
- YOLACT论文笔记
- 基于STM32-HAL库的直流电机控制
- 网络安全人才短缺加剧,企业如何不拘一格降人才?
- 大一计算机考试题库知识点,大一 计算机基础 期末考试题库