dsxay48646 2016-06-16 23:01
浏览 22
已采纳

如何删除仅包含空格的数组元素? [重复]

This question already has an answer here:

I have an array like this:

$arr = array (0 => 'red',
              1 => '   ',
              2 => 'blue',
              3 => '       ',
              4 => 'green',
              5 => '  ',
              6 => 'white',
              7 => '    ',
              8 => 'black',
              9 => '           ' );

Well I'm trying to remove all items which are just containing white space(s). So this it expected result:

$arr = array (0 => 'red',
              1 => 'blue',
              2 => 'green',
              3 => 'white',
              4 => 'black');

I can do that if those white spaces item be empty. So I can use $arr = array_filter($arr);. But in this case, because there is white spaces instead of nothing, array_filter() isn't useful. Is there any approach to do that?

</div>
  • 写回答

2条回答 默认 最新

  • dtf54486 2016-06-16 23:03
    关注

    You could just couple it with array_map using trim:

    $arr = array_filter(array_map('trim', $arr));
    

    This doesn't reindex the keys though, if you want you could just use array_values:

    $arr = array_values(array_filter(array_map('trim', $arr)));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?