我在解雇特定功能时会收到下一个通知:
Trying to get property of non-object in...
我的功能:
private function rate($form)
{
$score = 0;
$count = $form->find('input')->length;
$score += ($count >= 2 && $count <= 5) ? INPUT_COUNT_RATE : 0;
$count = $form->find('textarea')->length;
$score += $count == 1 ? TEXTAREA_COUNT_RATE : 0;
return $score;
}
有问题的行是find
函数的行。
var_dump
$form
返回:
object(simple_html_dom_node)[1062]...
可能是什么问题?
答案 0 :(得分:5)
->find()
返回匹配节点的数组,或返回null。您无法在查找结果上调用->length
,因为结果不是对象。尝试
$nodes = $form->find(...);
$count = count($nodes);