博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
由逻辑异或运算符而发现的PHP诡异运算符优先级
阅读量:5955 次
发布时间:2019-06-19

本文共 383 字,大约阅读时间需要 1 分钟。

PHP的逻辑运算符中,xor表示逻辑异或

$a xor $b

结果

如果 $a 和 $b 有且仅有一个为 true,则返回 true;如果都是true 或 false,则返回false。

然而在测试xor运算符时,发现一点问题

错误情况1

结果1

boolean false

情况2

结果2

boolean true

这是怎么回事呢?


我们换个测试xor运算符的方式

情况3

结果3

1

这样就没问题了,那么前两种情况是哪里有毛病呢?


情况4

结果4

boolean true

这样就对了,可见应是运算符优先级导致的。


在PHP中,and、or、xor的运算符优先级是比 = 低的,在这种情况下,加个小括号就好了……

转载于:https://www.cnblogs.com/Genesis2018/p/8304727.html

你可能感兴趣的文章
吃货少女走关西,美食小店大盘点
查看>>
C#学习基础---BrowsableAttribute.Browsable属性
查看>>
关于树的前序遍历,中序遍历,后序遍历的相互转化(含代码实现)
查看>>
分享一些android的资料 很实用
查看>>
Python加密保护-对可执行的exe进行保护
查看>>
android Bundle的作用
查看>>
后台系统上传文件回显上传进度条
查看>>
mysql 从库升级为主库的步骤
查看>>
inode满处理
查看>>
linux 定时任务 crond 服务介绍
查看>>
我和51CTO的缘分【我与51CTO一“七”成长】
查看>>
陈松松:知道这5个视频营销流量入口,你不缺流量
查看>>
Git 忽略文件
查看>>
Zabbix-server安装后的故障处理及Zabbix-agent的配置添加过程
查看>>
电子罗盘的分类
查看>>
分布式链路追踪工具skywalking 介绍
查看>>
struct和typedef struct
查看>>
Linux基础管理——磁盘管理及文件系统(全)
查看>>
【自用】手工编译lnmp环境
查看>>
普通用户通过Putty密钥方式登录
查看>>