PHP中的运算符---位运算符、递增递减运算符、三元运算符、字符串运算符、数组运算符、类型运算符、错误控制运算符
1、位运算符
位运算符用来对整型数的指定位进行置位,如果被操作数是字符串,则对该字符串的ASCII码值进行操作。
| 运算类型 | 运算符 | 举例 | 结果 |
| 按位与 | & | $a & $b | 将$a 与 $b 中均为1的位置为1,其余置为0 |
| 按位或 | | | $a | $b | 将$a 中为1 或$b中为1的位置为1,其余置为0 |
| 按位异或 | ^ | $a ^ $b | 将$a 与 $b 中不同的位置为1,其余置为0 |
| 按位非 | ~ | ~ $a | 将 $a 中为1的位置为0,为0的位置为1 |
| 左移 | << | $a << $b | 当$a 中的位向左移动$b次,每移动一次相当于乘以2 |
| 右移 | >> | $a >> $b | 当$a 中的位向右移动$b次,每移动一次相当于除以2 |
2、递增递减运算符
| 运算类型 | 运算符 | 举例 | 结果 |
| 前递增 | ++ | ++$a | $a自增1,然后返回$a |
| 后递增 | ++ | $a++ | 先返回$a,然后$a自增1 |
| 前递减 | -- | --$a | $a自减1,然后返回$a |
| 后递减 | -- | $a-- | 先返回$a,然后$a自减1 |
3、三元运算符
三元运算符(?:),又称三目运算符,作用类似选择语句,用于根据一个表达式的真假,从另外两个表达式中选择一个。用法如下:
逻辑表达式 ? 表达式1 : 表达式2
如果逻辑表达式为真,则返回表达式1,否则返回表达式2
4、字符串运算符
在PHP中,常看到两个字符串通过一个小圆点“.”连接起来的情况,该圆点就是字符串运算符。通过字符串运算符,可以将任意多的字符串连接成一条字符串。
如果字符串连接符的操作对象中有数值型变量,PHP引擎会将其先转成字符串型,然后再进行字符串连接。
5、数组运算符
| 运算类型 | 运算符 | 举例 | 结果 |
| 联合运算 | + | $a + $b | 将$a的元素附加到$b的后面,重复的键值不被覆盖 |
| 相等比较 | == | $a == $b | 当$a与$b拥有相同的键值对,返回真,否则返回假 |
| 全等比较 | === | $a === $b | 当$a与$b拥有相同的键值对,且元素的顺序和类型都相同,返回真,否则返回假 |
| 不等比较 | != 或 <> | $a != $b | 当$a与$b拥有相同的键值对,返回假,否则返回真 |
| 不全等比较 | !== | $a !== $b | 当$a与$b拥有相同的键值对,且元素的顺序和类型都相同,返回假,否则返回真 |
6、类型运算符
在PHP中,类型运算符instanceof常用来判断某个变量是否属于某个类的实例。此外,类型运算符还可以用来确定某一变量是否是继承自某一父类的子类的实例,也可以用来确定某一变量是否实现了某个接口的对象的实例。
7、错误控制运算符
错误控制运算符用@表示,将其放在出错的表达式前,可以屏蔽出现的错误信息。
PHP中的运算符---位运算符、递增递减运算符、三元运算符、字符串运算符、数组运算符、类型运算符、错误控制运算符的更多相关文章
- C++ Primer笔记12_运算符重载_递增递减运算符_成员訪问运算符
1.递增递减运算符 C++语言并不要求递增递减运算符必须是类的成员.可是由于他们改变的正好是所操作对象的状态.所以建议设定为成员函数. 对于递增与递减运算符来说,有前置与后置两个版本号,因此.我们应该 ...
- 谨慎使用递增/递减运算符(C++)
递增++和递减运算符--不论看起来还是用起来,都感觉是十分简单而又优雅的,然而其中却藏有无法受控制的陷阱,我们必须小心的避免错误的用法而出现的不可控的情况发生. 比方说:x = 2* x++ *(3 ...
- JavaScript运算符:递增递减运算符前置和后置的区别
从两段代码说起 var num1 = 2; var num2 = 20; var num3 = --num1 + num2; var num4 = num1 + num2; console.log(n ...
- 为什么位运算可以实现加法(1、 不考虑进位的情况下位运算符中的异或^可以表示+号)(2、 位运算符中的与运算符&和左移运算符<<可以模拟加法中的进位)(3、位运算不仅可以做加法,还可以做其它的乘法减法等:计算机本质是二进制运算)
为什么位运算可以实现加法(1. 不考虑进位的情况下位运算符中的异或^可以表示+号)(2. 位运算符中的与运算符&和左移运算符<<可以模拟加法中的进位)(3.位运算不仅可以做加法,还 ...
- C基础知识(3):指针--概念、数组中指针的递增/递减、指针数组&数组指针、指向指针的指针
指针是一个变量,其值为另一个变量的地址. 所有指针的值的实际数据类型,不管是整型.浮点型.字符型,还是其他的数据类型,都是一样的,都是一个代表内存地址的长的十六进制数. 下面从4个代码例子分别讲述以下 ...
- javascript运算符——位运算符
× 目录 [1]二进制 [2]非 [3]与[4]或[5]异或[6]左移[7]右移[8]>>>[9]应用 前面的话 位运算符是非常底层的运算,由于其很不直观,所以并不常用.但是,其速度 ...
- Python新手学习基础之运算符——位运算
位运算符 位运算实际上是把数字看作二进制来进行计算,它的运算法则如下: 结合实例,来看下位运算是如何进行的吧: 位运算在实际应用中用途很广泛,比如我们经常听到的子网掩码,它其实就是和IP地址做了按位与 ...
- java入门---运算符&算术运算符&自增自减运算符&关系运算符&位运算符
计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量.我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 ...
- 【Python】2.16学习笔记 运算符,位运算符,if-else语句
复合运算符 a *= b # a = a * b a += b # a = a + b a -= b # a = a - b ... 位运算符 对数字进行二进制运算 按位与 &,二进制位都为一 ...
随机推荐
- Scala深入浅出实战经典-----002Scala函数定义、流程控制、异常处理入门实战
002-Scala函数定义.流程控制.异常处理入门实战 Scala函数定义 语句结束无分号 定义无参函数 def 函数名称(参数名称:参数类型)[:Unit=]{ 函数体 } 老师的代码 我的实际代码 ...
- Mysql 连接sleep状态问题解决。
昨日mysql总是出问题,各种程序在运行时,出现了连接已断开的问题. 导致此问题的原因: 1. 最大连接数 2. 网络问题 3. mysql服务器资源问题 然而,上面最常见的3个问题都没有出现.后来 ...
- HDOJ 题目2474 String painter(区间DP)
String painter Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- SQL简单语法
(1)select SELECT 列名称 FROM 表名称 (2)distinct SELECT DISTINCT 列名称 FROM 表名称 SELECT * FROM 表名称 (3)where SE ...
- python获取字母在字母表对应位置的几种方法及性能对比较
python获取字母在字母表对应位置的几种方法及性能对比较 某些情况下要求我们查出字母在字母表中的顺序,A = 1,B = 2 , C = 3, 以此类推,比如这道题目 https://project ...
- TOMCAT运行一段时间后网页无响应或连不上,TOMCAT无错误日志
解决方法:修改 tomcat 的 java options 参数1)增加java options参数-Xmn384m-XX:MaxPermSize=128m-XX:+UseConcMarkSweepG ...
- 手机支持USB功能、驱动文件对应关系
手机支持USB功能: 1.UMS(USB MASS Stronge) : 连接PC作为存储盘使用 2.ADB : 用于调试 3.MTP :连接PC作为存储盘使用(win XP需要安装WMP10 以上 ...
- Spring MVC学习笔记--认识SpringMVC
Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框 ...
- MySQL日期时间函数大全 转
DAYOFWEEK(date) 返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1998-02-03'); ...
- MyEclipse中直接打开class文件的方法
安装步骤: 1>下载jad.exe(这是一个class文件的反编译工具,但是是命令行运行编译,使用起来不是很方便:), 将其拷贝到%JAVA_HOME%/bin目录下(其他目录也可). 2> ...