IF语句中的PHP逻辑运算符

IF语句中的PHP逻辑运算符,php,if-statement,operators,Php,If Statement,Operators,我有以下代码: PHP if($brand == 'ABC' && $main == ''){ include '../_inc/report.php'; }else if($brand == 'ABC' && $main == 'TRUE'){ include '../_inc/analysis.php'; }else if($brand == 'XYZ' || $brand == '123' || $brand == '1A9' &&a

我有以下代码:

PHP

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if($brand == 'XYZ' || $brand == '123' || $brand == '1A9' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'XYZ' || $brand == '123' || $brand == '1A9' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}
信息在URL内传递到PHP页面,例如:

?br=ABC&cr=MAY2014&pd=NOV2013&mn=TRUE
?br=XYZ&cr=MAY2014&pd=NOV2013&mn=TRUE
并按以下方式处理:

$brand = $_GET['br'];
$main = $_GET['mn'];
发生的情况是,如果
$brand=ABC和$main=TRUE
,那么
analysis.php
成功加载(这是正确的)

但是,如果
$brand=XYZ和$main=TRUE
则加载
report.php
,这不是我期望或需要的行为


这与操作员的工作方式有关,还是我的代码不正确。欢迎您提供任何帮助和反馈。

您应该使用适当的标记编写条件

试试下面的代码

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

你应该用适当的记号写条件

试试下面的代码

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

你应该用适当的记号写条件

试试下面的代码

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

你应该用适当的记号写条件

试试下面的代码

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}
试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}
试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}
试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}
试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

&&
的优先级高于
|
。您当前的代码执行以下操作:

if($brand == 'XYZ' || $brand == '123' || ($brand == '1A9' && $main == '')){
这计算为true,因为
$brand==“XYZ”
为true。使用括号更正语句:

if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){

有关详细信息,请参阅。

&&
的优先级高于
|
。您当前的代码执行以下操作:

if($brand == 'XYZ' || $brand == '123' || ($brand == '1A9' && $main == '')){
这计算为true,因为
$brand==“XYZ”
为true。使用括号更正语句:

if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){

有关详细信息,请参阅。

&&
的优先级高于
|
。您当前的代码执行以下操作:

if($brand == 'XYZ' || $brand == '123' || ($brand == '1A9' && $main == '')){
这计算为true,因为
$brand==“XYZ”
为true。使用括号更正语句:

if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){

有关详细信息,请参阅。

&&
的优先级高于
|
。您当前的代码执行以下操作:

if($brand == 'XYZ' || $brand == '123' || ($brand == '1A9' && $main == '')){
这计算为true,因为
$brand==“XYZ”
为true。使用括号更正语句:

if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){

有关详细信息,请参阅。

运算符优先级有问题。试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

运算符优先级有问题。试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

运算符优先级有问题。试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

运算符优先级有问题。试试这个

if($brand == 'ABC' && $main == ''){
    include '../_inc/report.php';
}else
if($brand == 'ABC' && $main == 'TRUE'){
    include '../_inc/analysis.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == ''){
    include '../_inc/report.php';
}else
if(($brand == 'XYZ' || $brand == '123' || $brand == '1A9') && $main == 'TRUE'){
    include '../_inc/analysis.php';
}

这可以用一种更短的方式书写:

$include = false;
if($brand=='ABC'){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
} else if(in_array($brand, array('XYZ', '123', '1A9'))){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
}
if($include)include '../_inc/'.$include.'.php';

这可以用一种更短的方式书写:

$include = false;
if($brand=='ABC'){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
} else if(in_array($brand, array('XYZ', '123', '1A9'))){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
}
if($include)include '../_inc/'.$include.'.php';

这可以用一种更短的方式书写:

$include = false;
if($brand=='ABC'){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
} else if(in_array($brand, array('XYZ', '123', '1A9'))){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
}
if($include)include '../_inc/'.$include.'.php';

这可以用一种更短的方式书写:

$include = false;
if($brand=='ABC'){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
} else if(in_array($brand, array('XYZ', '123', '1A9'))){
    if(empty($main))$include = 'report';
    else if($main)$include = 'analysis';
}
if($include)include '../_inc/'.$include.'.php';

啊!!!!!谢谢你,非常感谢。真不敢相信我错过了。DOH!!!啊!!!!!谢谢你,非常感谢。真不敢相信我错过了。DOH!!!啊!!!!!谢谢你,非常感谢。真不敢相信我错过了。DOH!!!啊!!!!!谢谢你,非常感谢。真不敢相信我错过了。DOH!!!