从 PHP 数组中删除零值

2022-08-30 10:58:29

我有一个像这样的普通数组

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
)

我需要从这个数组中删除所有0,这可以通过PHP数组函数实现吗?


答案 1

array_filter这样做。如果不提供回调函数,它将筛选出所有等于 false 的值(布尔转换)。


答案 2

您只需循环遍历数组并取消设置任何正好等于 0 的项目

foreach ($array as $array_key => $array_item) {
  if ($array[$array_key] === 0) {
    unset($array[$array_key]);
  }
}