我不明白這個東西是如何工作的,但我需要創建一個新函數並將其存儲在一個變量中。然後,使用array_filter
,刪除所有年齡不足的狗。以下是我創建至今:將函數存儲在變量中
$animals = [
[ 'name' => 'Waffles', 'type' => 'dog', 'age' => 12],
[ 'name' => 'Fluffy', 'type' => 'cat', 'age' => 14],
[ 'name' => 'Spelunky', 'type' => 'dog', 'age' => 4],
[ 'name' => 'Hank' , 'type' => 'dog', 'age' => 11],
];
$youngDogs = function ($animals, $filter){
array_filter(
$animals,
function($animals, $age = 5){
$arr = [];
if($animals['type'] == 'dog' && $animals['age'] < $age)
{
$arr = [
'name' => $animals['name'],
'type' => $animals['type'],
'age' => $animals['age'],
];
}
return $arr;
}
);
};
var_dump($youngDogs($animals, 5));
我的想法是創建一個新的陣列和存儲符合條件並返回它的狗,但一切是一個爛攤子和函數返回NULL和我不不知道發生了什麼。任何人都可以給我一個提示嗎?
謝謝!我從來不會想出如何使用'$ age'! – pidari