Php 管道在面向对象编码中指的是什么?
我对编码、PHP和面向对象编程都是新手。我遇到了下面这行代码,我想知道|的用途以及使用它的时间?在我看来,它是一个或,但我认为或由||Php 管道在面向对象编码中指的是什么?,php,operators,Php,Operators,我对编码、PHP和面向对象编程都是新手。我遇到了下面这行代码,我想知道|的用途以及使用它的时间?在我看来,它是一个或,但我认为或由|| empty($this->contact_country) | empty($this->contact_questcomm) | |是按位或|是逻辑或。这些是PHP语言中的运算符,与OOP无关 巧合的是,位布尔运算符和逻辑布尔运算符对布尔类型的工作方式相同,因为false/true和0/1在PHP中是可互换的 例如,true&false相当于1
empty($this->contact_country) | empty($this->contact_questcomm) |
|
是按位或<代码>|是逻辑或。这些是PHP语言中的运算符,与OOP无关
巧合的是,位布尔运算符和逻辑布尔运算符对布尔类型的工作方式相同,因为false/true和0/1在PHP中是可互换的
例如,true&false
相当于1&0
。结果是0
,这在PHP中被认为是一个假值(即在布尔上下文中为false
)
无论如何,您不应该在条件表达式中使用逐位运算符,除非您在条件中进行位移位计算。使用为条件逻辑而设计的逻辑运算符,这样人们就不会感到困惑。像您一样,我肯定会在给定代码中用
|
替换|
,因为empty()
返回false或true。按位或
运算符,如果意图是逻辑or,我会一直使用|
@BoltClock-我认为写的更好的方法是将它作为|
@BoltClock-谢谢。我现在还不知道什么是逐位的,也不知道什么是移位的,但是当需要的时候猜测会涉及到这一点。@BoltClock-这可能是一个单独的问题,但出于好奇,使用MVC开发代码有多重要?@PeanutsMonkey:你说的重要是什么意思?@PeanutsMonkey:嗯,我确实知道,尽管这是一个很好的模式来建立您的体系结构,但这并不是一个很难遵守的规则。