1

我正在尝试使用此问题的答案中的代码:Count values in subarray

但它不想使用变量?

因此,例如,这有效:

echo count(array_filter($tasks, function($element){
    return $element['parent'] == 15;
}));

回声:4

但这失败了:

$number = 15;

//Kolla ifall denna har subtasks?
echo count(array_filter($tasks, function($element) {
    return $element['parent'] == $number;
}));

回声 0

关于为什么的任何想法?

4

1 回答 1

1

因为$number在 lambda 函数中不可用,所以添加use ($number)

$number = 15;
//Kolla ifall denna har subtasks?
echo count(array_filter($tasks, function($element) use ($number) {
return $element['parent'] == $number;
}));
于 2012-10-16T09:45:24.300 回答