这个简单的条件分配(是的,不幸的是我喜欢它!)不起作用。 $x
和$i
变量的范围是什么?
if($x = $s->getXAxis() && ($i = array_search($x, $this->xAxis)) !== false) // 88
$s->xAxis = $i; // 89
我得到了:
注意:未定义的变量:第88行的x。
答案 0 :(得分:5)
我猜这是运算符优先级,尝试将赋值放入括号中:
if(($x = $s->getXAxis()) && ($i = array_search($x, $this->xAxis)) !== false)
$s->xAxis = $i;
答案 1 :(得分:0)
第一个表达式是否应该为$x
赋值?
检查$x
是否已定义:isset($x)