分享学习记录
互联网技术知识

PHP位运算符|、&和逻辑运算符||、&&的区别

位运算符

在PHP中,|和&被称为位运算符,两者的含义如下:

|:参加运算的两位运算量有一位为1时,该位为1,否则为0
&:参加运算的两位运算量相应位均为1时该位为1,否则为0

先将运算量转为二进制进行然后进行位对比,看下面的列子:

<?php
$a = 10;        //二进制为:00000000 00000000 00000000 00001010
$b = 20;        //二进制为:00000000 00000000 00000000 00010100
$c = $a | $b;    //二进制为:00000000 00000000 00000000 00011110
echo $c;        //上面的二进制位运算后结果为30

逻辑运算符

||:逻辑或,左右两边参数都为FALSE,返回FALSE,否则返回TRUE
&&:逻辑或,左右两边参数都为TRUE,返回TRUE,否则返回FALSE

两者区别

逻辑运算符存在短路问题,比如在进行逻辑或(||)运算的时候,如果左边为TRUE,就直接返回TRUE,不再判断右边的结果。而位运算符则不存在短路问题,左右两边都要执行。

赞(0)
文章名称:《PHP位运算符|、&和逻辑运算符||、&&的区别》
文章链接:https://www.bailuze.com/9171.html
本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
本站专注于百度、搜狗、360、谷歌、bing等常见搜索引擎的优化,关键词排名的提高,诚意咨询邮箱526009505@qq.com
分享到