什么做的在方法参数中做什么?

时间:2016-11-19 01:25:47

标签: php conventions

我一直在阅读OOP中的PHP约定,遇到|运算符/符号,我找不到任何信息。在环境中进行试错测试后,我发现如果参数不是数据类型int,则输出参数右侧的变量。

例如,让我们使用这样的类:

class MyClass {
    const FROM_DB = 1;
    const PUBLIC_ONLY = 0;

    public static function getSomething($input, $db = 0, $public = 1) {
        return $input;
    }
}

此用例将返回1:

echo MyClass::getSomething( 'test' | MyClass::FROM_DB | MyClass::PUBLIC_ONLY );

此用例将返回7:

echo MyClass::getSomething( 6 | MyClass::FROM_DB | MyClass::PUBLIC_ONLY );

最后,这个用例会返回' test':

echo MyClass::getSomething( 'test' , MyClass::FROM_DB | MyClass::PUBLIC_ONLY );

我不明白|在做什么? I found it here。任何人都可以解释这个叫什么以及如何正确使用它?

提前感谢see it working here

1 个答案:

答案 0 :(得分:1)

它是一个按位OR运算符。

bitwise operations wikipedia