我有一个像这样的数组值。我尝试了array_search,它没有用。我想要的就是只过滤具有状态值的数组值。
<标题> 输出 Array
(
[1] => Array
(
[author] => Author1
[book] => Book1
[status] => 1
)
[2] => Array
(
[author] => Author2
[book] => Book2
)
[3] => Array
(
[author] => Author3
[book] => Book3
[status] => 1
)
)
<标题>预期输出Array
(
[1] => Array
(
[author] => Author1
[book] => Book1
[status] => 1
)
[3] => Array
(
[author] => Author3
[book] => Book3
[status] => 1
)
)
如果期望的输出具有正确的数字序列,我会更高兴。在上面的例子中,有两个数组,数组号分别为[1]和[3]。如果可能的话,我需要将其设置为[1]和[2]。
任何帮助都会很有用。
谢谢,Kimz
标题>标题>你可以这样做
foreach($my_array as $arr) {
if(isset($arr['status']) && $arr['status'] != '') {
$temp_array[] = $arr;
}
}
print_r($temp_array);
可以使用array_filter
$array = array(['status' => 1], [], ['status' => 1]);
$result = array_filter($array, function($item)
{
return !empty($item['status']);
});
var_dump($result);