php中的运算符优先级

时间:2016-03-04 09:43:33

标签: php operator-keyword operator-precedence

我们知道=的优先级低于!

我的问题:如果上述句子为真,那么如何执行以下if()条件

function foo()
{ 
   return false;
}


if(!$a=foo())
{
  echo "Yes, foo() appeared here.";
}

1 个答案:

答案 0 :(得分:7)

这是一项任务,而非比较。此外,您还有一个调用所需的函数调用。然后订单是:

1) Function call returning false;
2) Assignment of false value to $a;
3) Negation of $a as !false, i.e., true.