关联数组删除所有值为 0 的值
Associative array remove all values of 0
我在 PHP 中有一个关联数组,我想删除关联值为 0
的所有值
Array ( [item1] => 0 [item2] => 10 [item5] => 0 [item10] => 10 [item12] => 5 )
谢谢
你可以简单地使用 array_filter
$data = Array ( 'item1' => 0 ,'item2' => 10, 'item5' => 0, 'item10' => 10, 'item12' => 5 );
echo '<pre>';print_r(array_filter($data));
好吧,有很多方法可以实现这一点,我在下面提到了其中两个:
- 使用array_filter.
片段:
<?php
$arr = [
'item1' => 0,
'item2' => 10,
'item5' => 0,
'item10' => 10,
'item12' => 5,
'item120' => false,
];
$filtered = array_filter($arr,function($value){
return $value !== 0;
});
print_r($filtered);
- 我建议的另一种方法是使用 array_diff()
片段:
<?php
$arr = [
'item1' => 0,
'item2' => 10,
'item5' => 0,
'item10' => 10,
'item12' => 5,
'item120' => false,
];
print_r(array_diff($arr,[0]));
我在 PHP 中有一个关联数组,我想删除关联值为 0
的所有值Array ( [item1] => 0 [item2] => 10 [item5] => 0 [item10] => 10 [item12] => 5 )
谢谢
你可以简单地使用 array_filter
$data = Array ( 'item1' => 0 ,'item2' => 10, 'item5' => 0, 'item10' => 10, 'item12' => 5 );
echo '<pre>';print_r(array_filter($data));
好吧,有很多方法可以实现这一点,我在下面提到了其中两个:
- 使用array_filter.
片段:
<?php
$arr = [
'item1' => 0,
'item2' => 10,
'item5' => 0,
'item10' => 10,
'item12' => 5,
'item120' => false,
];
$filtered = array_filter($arr,function($value){
return $value !== 0;
});
print_r($filtered);
- 我建议的另一种方法是使用 array_diff()
片段:
<?php
$arr = [
'item1' => 0,
'item2' => 10,
'item5' => 0,
'item10' => 10,
'item12' => 5,
'item120' => false,
];
print_r(array_diff($arr,[0]));