1

如果我们有一个 if 语句,例如

`<?php if($data[1][0][1] == "aaa" || $data[2][0][1] == "bbb" || $data[1][0][2] == "ccc" || $data[2][0][2] == "ddd")
{
  $return_value = {the index array value being passed above};
  echo "which portion in the if statement OR was actually passed? and return that value" . $return_value;
}?>`

我们能否准确找出在 OR if 语句中传递的实际值?

4

3 回答 3

1

我认为唯一的方法是删除所有 OR 条件,留下其中一个。或者你可以试试这个

`<?php if($data[1][0][1] == "aaa")
{
  echo 'first If';
}
if($data[2][0][1] == "bbb"){
  echo 'second if';
}
if($data[1][0][2] == "ccc"){ echo 'third if';}

if($data[2][0][2] == "ddd"){
echo 'fourth if';
}
?>`
于 2015-03-17T21:09:43.237 回答
0

在您的 if 语句中,我们无法找出哪一部分是正确的。

这是有关短路评估的更多详细信息

于 2013-07-22T01:59:39.543 回答
0

您可以使用分配将返回一个值的事实

所以

if (($part = 1 && $data[1][0][1] = "aaa") ||

等等然后检查if语句中的部分。它将被设置为触发真实陈述的部分

尽管如果将其从 if 语句中取出并为其提供更好的结构可能会更好

于 2015-03-17T21:09:52.377 回答