首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"AND &“运算符工作得很好,但是"OR区”和-OR "^“都是正确的

"AND &“运算符工作得很好,但是"OR区”和-OR "^“都是正确的
EN

Stack Overflow用户
提问于 2013-06-28 11:59:10
回答 4查看 63关注 0票数 2

我正在使用逻辑运算符来测试变量,但是和&运算符工作得很好,但是和-OR ^都是正确的。

为什么?

代码语言:javascript
复制
$a = 6;
$b = 6;

if ($a OR $b == 3) {
    echo 'true <br />';
}
else {
    echo 'false <br />';
}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-06-28 12:00:42

问题在于您的语法。

您需要分别查看表达式。

代码语言:javascript
复制
if($a) OR if($b == 3)

就是你在做的事。

你想要的是:

代码语言:javascript
复制
if($a == 3 || $b == 3)

如果您单独查看$a,除0以外的任何值都将返回true,使整个等式true由于OR而产生。

票数 4
EN

Stack Overflow用户

发布于 2013-06-28 12:00:14

因为你必须或布尔结果-你读它太像英语。

代码语言:javascript
复制
if ($a == 3 || $b == 3)

而不是

代码语言:javascript
复制
if ($a OR $b == 3)
票数 3
EN

Stack Overflow用户

发布于 2013-06-28 12:02:29

这是一个优先的问题-更多细节请参见http://php.net/manual/en/language.operators.precedence.php

另外两个答案都给出了你需要的代码。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17364248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档