Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP嵌套if条件_Php - Fatal编程技术网

PHP嵌套if条件

PHP嵌套if条件,php,Php,我试图实现的是一个嵌套条件,如if((a=true&&b=true)或(c=true&&d=true)){…}。这似乎对我不起作用 进一步解释:我有两个变量,我们可以称之为“顶部”,两个变量,我们可以称之为“底部”。如果变量在“top”和“bottom”中都为true,我需要执行代码 要更简洁地说明: if ((t1 = true && b1 = true) or (t1 = true && b2 = true) or (t2 = true &am

我试图实现的是一个嵌套条件,如
if((a=true&&b=true)或(c=true&&d=true)){…}
。这似乎对我不起作用

进一步解释:我有两个变量,我们可以称之为“顶部”,两个变量,我们可以称之为“底部”。如果变量在“top”和“bottom”中都为true,我需要执行代码

要更简洁地说明:

if ((t1 = true && b1 = true) or
    (t1 = true && b2 = true) or
    (t2 = true && b1 = true) or
    (t2 = true && b2 = true)
) {
    ...do some stuff...
}

我很想把它叫做“格问题的条件语句”。。。除了它不是一个真正的晶格问题。。。但是如果你画它,它看起来确实有点像一个格子。。。是的,如果你能告诉我一个很好的方法,你会非常惊讶,如果你能告诉我应该怎么称呼它,你会非常惊讶。

你需要使用两个等号
=
而不是
=
。此外,变量前面需要有
$
。你的“或”应该是
|

逻辑是正确的

应该是这样的:

if (($t1 == true && $b1 == true) ||
    ($t1 == true && $b2 == true) ||
    ($t2 == true && $b1 == true) ||
    ($t2 == true && $b2 == true)
) {
    ...do some stuff...
}

您需要使用两个等号来代替
=
。此外,变量前面需要有
$
。你的“或”应该是
|

逻辑是正确的

应该是这样的:

if (($t1 == true && $b1 == true) ||
    ($t1 == true && $b2 == true) ||
    ($t2 == true && $b1 == true) ||
    ($t2 == true && $b2 == true)
) {
    ...do some stuff...
}

=
用于赋值,
=
用于测试相等,
==
用于测试相等和相等类型。您需要使用
=
==
,这取决于t1、t2、b1、b2已经是布尔值还是其他值。还有亚当说的东西,除了
是完全有效的。

=
用于赋值,
=
用于测试相等,
==
用于测试相等和相等类型。您需要使用
=
==
,这取决于t1、t2、b1、b2已经是布尔值还是其他值。还有亚当说的东西,除了
是完全有效的。

改变条件

if (($t1 == true && $b1 == true) or
($t1 == true && $b2 == true) or
($t2 == true && $b1 == true) or
($t2 == true && $b2 == true)
)
=
是赋值运算符
=
是比较运算符。

更改条件

if (($t1 == true && $b1 == true) or
($t1 == true && $b2 == true) or
($t2 == true && $b1 == true) or
($t2 == true && $b2 == true)
)

=
是赋值运算符
=
是比较运算符。

从技术上讲,他可以使用
,但我同意,这样做很荒谬。我不知道。每天学点新东西:)。这与PHP类似C的语法非常不一致。从技术上讲,他可以使用
,但我同意,这样做很荒谬。我不知道。每天学点新东西:)。这与PHP的C类语法非常不一致;已尝试将其检查为
!=false
之前的错误,但没有在整个函数中使用它。非常感谢你的清理,丹。嗯,我觉得有点傻;已尝试将其检查为
!=false
之前的错误,但没有在整个函数中使用它。非常感谢你的清理,丹。