我想删除$ fruits ['banana']记录,因为$ fruits ['banana'] ['shelf_life']已过期。
我可以做一个foreach来找到我正在检查的['shelf_life']值,但我怎么发现它属于$ fruits ['banana']来删除它?
$fruits=array(
'apple' => array ('shelf_life' => 10),
'banana' => array ('shelf_life' => 5),
'orange' => array ('shelf_life' => 7)
)
$shelf_time = 6
// I want to remove expired fruits from array
foreach($fruits as $v1){
if ($v1['shelf_life']<$shelf_time)
//remove matching $fruits array record 'banana'... how?
}
我想要的结果是
$fruits=array(
'apple' => array ('shelf_life' => 10),
'orange' => array ('shelf_life' => 7)
)
答案 0 :(得分:2)
根据$shelf_time
的值对其进行过滤。根据您的需要使用>
或>=
:
$fruits = array_filter($fruits, function($var) use ($shelf_time) {
return $var['shelf_life'] >= $shelf_time;
});
答案 1 :(得分:0)
您可以使用unset
unset($fruits['apple']);