我有一个像这样的普通数组
Array
(
[0] => 0
[1] => 150
[2] => 0
[3] => 100
[4] => 0
[5] => 100
[6] => 0
[7] => 100
[8] => 50
[9] => 100
[10] => 0
[11] => 100
[12] => 0
[13] => 100
[14] => 0
[15] => 100
[16] => 0
[17] => 100
[18] => 0
[19] => 100
[20] => 0
[21] => 100
)
Run Code Online (Sandbox Code Playgroud)
我需要从这个数组中删除所有0,这可能是一个PHP数组函数
Gum*_*mbo 88
array_filter那样做.如果您不提供回调函数,它会过滤掉所有等于false的值(布尔转换).
您可以循环遍历数组并取消设置任何完全等于0的项目
foreach ($array as $array_key => $array_item) {
if ($array[$array_key] === 0) {
unset($array[$array_key]);
}
}
Run Code Online (Sandbox Code Playgroud)
第一种方法:
<?php
$array = array(0,100,0,150,0,200);
echo "<pre>";
print_r($array);
echo "</pre>";
foreach($array as $array_item){
if($array_item==0){
unset($array_item);
}
echo"<pre>";
print_r($array_item);
echo"</pre>";
}
?>
Run Code Online (Sandbox Code Playgroud)
第二种方法:使用array_diff函数
<?php
$array = array(0,100,0,150,0,200);
$remove = array(0);
$result = array_diff($array, $remove);
echo"<pre>";
print_r($result);
echo"</pre>";
?>
Run Code Online (Sandbox Code Playgroud)
有点晚了,但复制并粘贴:
$array = array_filter($array, function($a) { return ($a !== 0); });
Run Code Online (Sandbox Code Playgroud)