我有这个数组
$array = Array(
'0' => Array('id' => '5', 'class' => 'A'),
'1' => Array('id' => '53', 'class' => 'B'),
'2' => Array('id' => '2', 'class' => 'C'),
);
我想要,例如,如果班级是' B'只保留键1;
这是我的代码,但它无法正常工作:
foreach ($array as $key => $values) {
$array[$key]['description'] = 'dadadadad';
if ($values['class'] == 'B') {
$array = array_intersect_key($array, array_flip(Array($key)));
}
}
请帮帮我。
答案 0 :(得分:2)
使用array_filter
:
$a = array_filter($a, function($item) {
return $item['class'] === 'B';
});
根据文档,使用array_filter时会保留“数组键”。