清空空格数组

时间:2015-09-05 20:57:57

标签: php matrix web

我有这个数组,我想去除那些没有值的索引,所以例如在索引[0]中我想摆脱[0]和[4]所以我会有一个3值数组,依此类推......

Array
(
    [0] => Array
        (
            [0] => 
            [1] => 
            [2] => 7
            [3] => 
            [4] => 8
            [5] => 
        )

    [1] => Array
        (
            [0] => 
            [1] => 
            [2] => 9
            [3] => 10
            [4] => 
        )

    [2] => Array
        (
            [0] => 
            [1] => 11
            [2] => 12
            [3] => 
        )

)

3 个答案:

答案 0 :(得分:1)

foreach ($array as $key=>$value) {
  if ($value == '') { unset($array[$key]); }
}

应该这样做。

答案 1 :(得分:0)

这是array_filter的一个很好的用例。检查!empty()允许您删除空字符串和空值。

$filter_func = function($input) {
    $output = [];
    foreach ($input as $set) {
        $output[] = array_values(
            array_filter($set, function($element) {
                return !empty($element);
            })
        );
    }
    return $output;
}

答案 2 :(得分:0)

您可以使用array_filter()

$my_array = array_filter($my_array);

如果你需要"重新索引"之后,您可以运行$my_array = array_values($my_array)

示例:

$a   = array();
$a[] = '';
$a[] = 1;
$a[] = null;
$a[] = 2;
$a[] = 3;

$a = array_filter($a);
print_r($a);

输出:

Array
(
    [1] => 1
    [3] => 2
    [4] => 3
)