“|";在这个PHP代码中


What is the meaning of "|" in this PHP code?

可能重复:
参考-这个符号在PHP中是什么意思?

以下是PHP代码:

<?php 
    $a = $b['key'] | 0;
?>

是接线员吗?

|是位OR运算符。

对零(| 0(进行逐位OR没有任何意义,因为它不会翻转任何位。也许写这篇文章的人只是一个非常糟糕的程序员,并试图用这种方式将字符串转换为整数。他应该用(string)演员阵容!

它的位OR,如这里定义的。

例如:

 Bitwise Inclusive OR
( 5 = 0101) = ( 0 = 0000) | ( 5 = 0101)
( 5 = 0101) = ( 1 = 0001) | ( 5 = 0101)
( 7 = 0111) = ( 2 = 0010) | ( 5 = 0101)
( 5 = 0101) = ( 4 = 0100) | ( 5 = 0101)
(13 = 1101) = ( 8 = 1000) | ( 5 = 0101)

|是一个逐位OR函数。

||是一个正则的OR

它是按位OR运算符。

请参阅此处了解更多详细信息:

http://php.net/manual/en/language.operators.bitwise.php

它正在执行按位"或"运算。

代码的原始作者可能打算放入另一个|,使其成为逻辑OR(||(,因为0的逐位OR对输出没有任何影响。尽管这毫无意义,但他本可以简单地转换为一个整数来获得相同的结果。

|是位运算符(http://php.net/manual/en/language.operators.bitwise.php)

|表示"设置了在$b['key']0中设置的位。">

因为第二部分是零,所以只有当$b['key']也是零时,它才会返回false