[PHP] 按位与& 或| 异或^ 的日常使用
按位与: 1.一个int型字段,存储十进制的数字,比如说是5 2.判断第三位是否开启自动保存的代码 3.pow是指数表达式函数,2的2次方,转成二进制是0100,按位与0101 & 0100 是0100 十进制为4,因此不等于0为true function setStatus($source,$flag,$value){ if (intval($value) == 1 || strcasecmp($value,'on') == 0) { $value = 1; } else { $value = 0; } $status = pow(2,$flag - 1); $oldStat = (($source & $status) != 0); if ($oldStat == $value) { return $source; } if ($value) { $source |= $status; } else { $source ^= $status; } return $source; } //001 转成 101 var_dump(setStatus(1,3,'on'));//int(5) //1101 转成 0101 var_dump(setStatus(13,4,0));//int(5)
(编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |