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中的运算符---位运算符、递增递减运算符、三元运算符、字符串运算符、数组运算符、类型运算符、错误控制运算符的更多相关文章

  1. C++ Primer笔记12_运算符重载_递增递减运算符_成员訪问运算符

    1.递增递减运算符 C++语言并不要求递增递减运算符必须是类的成员.可是由于他们改变的正好是所操作对象的状态.所以建议设定为成员函数. 对于递增与递减运算符来说,有前置与后置两个版本号,因此.我们应该 ...

  2. 谨慎使用递增/递减运算符(C++)

    递增++和递减运算符--不论看起来还是用起来,都感觉是十分简单而又优雅的,然而其中却藏有无法受控制的陷阱,我们必须小心的避免错误的用法而出现的不可控的情况发生. 比方说:x = 2* x++ *(3 ...

  3. JavaScript运算符:递增递减运算符前置和后置的区别

    从两段代码说起 var num1 = 2; var num2 = 20; var num3 = --num1 + num2; var num4 = num1 + num2; console.log(n ...

  4. 为什么位运算可以实现加法(1、 不考虑进位的情况下位运算符中的异或^可以表示+号)(2、 位运算符中的与运算符&和左移运算符<<可以模拟加法中的进位)(3、位运算不仅可以做加法,还可以做其它的乘法减法等:计算机本质是二进制运算)

    为什么位运算可以实现加法(1. 不考虑进位的情况下位运算符中的异或^可以表示+号)(2. 位运算符中的与运算符&和左移运算符<<可以模拟加法中的进位)(3.位运算不仅可以做加法,还 ...

  5. C基础知识(3):指针--概念、数组中指针的递增/递减、指针数组&数组指针、指向指针的指针

    指针是一个变量,其值为另一个变量的地址. 所有指针的值的实际数据类型,不管是整型.浮点型.字符型,还是其他的数据类型,都是一样的,都是一个代表内存地址的长的十六进制数. 下面从4个代码例子分别讲述以下 ...

  6. javascript运算符——位运算符

    × 目录 [1]二进制 [2]非 [3]与[4]或[5]异或[6]左移[7]右移[8]>>>[9]应用 前面的话 位运算符是非常底层的运算,由于其很不直观,所以并不常用.但是,其速度 ...

  7. Python新手学习基础之运算符——位运算

    位运算符 位运算实际上是把数字看作二进制来进行计算,它的运算法则如下: 结合实例,来看下位运算是如何进行的吧: 位运算在实际应用中用途很广泛,比如我们经常听到的子网掩码,它其实就是和IP地址做了按位与 ...

  8. java入门---运算符&算术运算符&自增自减运算符&关系运算符&位运算符

        计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量.我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 ...

  9. 【Python】2.16学习笔记 运算符,位运算符,if-else语句

    复合运算符 a *= b # a = a * b a += b # a = a + b a -= b # a = a - b ... 位运算符 对数字进行二进制运算 按位与 &,二进制位都为一 ...

随机推荐

  1. Ajax 语法

    /*** * ajax语法 * * ***/ $.ajax({ async:false, //同步请求 url:"XXXXX.do",//请求后台地址 data: {"p ...

  2. Java在JFinal中出现Can not create instance of class: com.keesail.web.config.WebConfig异常处理方式

    编译的时候一直出现如下问题: 后面 查了许多资料 说是build项目的时候web.xml没有输出到class目录.后面试了很多方式不行.后面自己摸索出如下方式解决问题: 改成默认输出目录.

  3. readelf与动态库

    使用arm-linux-gcc编译的可执行文件可能会无法在开发板上执行,并提示:-/bin/sh xxx not found 解决办法: 在主机上使用readelf -d xxx 来查看该程序所需要的 ...

  4. C# 水印透明度图片

    /// <summary> /// 在一张图片的指定位置处加入一张具有水印效果的图片 /// </summary> /// <param name="Sourc ...

  5. freeCAD下载与安装

    官方安装: freeCAD稳定版 freeCAD官方提供了几个稳定版本供开发者使用: Windows (XP, Vista and 7, 32 and 64bits), Mac OS X (Lion ...

  6. 数论学习笔记之解线性方程 a*x + b*y = gcd(a,b)

    ~>>_<<~ 咳咳!!!今天写此笔记,以防他日老年痴呆后不会解方程了!!! Begin ! ~1~, 首先呢,就看到了一个 gcd(a,b),这是什么鬼玩意呢?什么鬼玩意并不 ...

  7. 利用border-radious画图形

    今天才发现,border-radius可以画很多图形,下面跟我来看一下吧: 在设有宽和高的情况下画一个圆: #div1{ /*宽高相等,圆角范围为高或宽的一半或以上*/ background-colo ...

  8. yii开发一个web程序的基本流程

    1. 创建目录结构.在前面的章节Creating First Yii Application写的yiic工具可以帮助我们快速完成这步. 2. 配置 application.就是修改applicatio ...

  9. 普通硬件就能破解GSM A5加密算法

    如果你还在使用基于早期信号标准的GSM手机,那么你最好在使用手机的过程中小心一点了.因为根据国外媒体的最新报道,安全研究专家通过测试发现,他们只需要使用三张NVIDIA GeForce GTX690显 ...

  10. 关于jetty项目中的问题.

    在某台虚拟机上部署的项目出现的问题: 我想要更改定义的owl文件,重启服务器,却打不开网页. 1.couldnot found owl ,然后我拷贝一份owl到work/config目录下,继续更改配 ...