首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除数组php中的空格

删除数组php中的空格
EN

Stack Overflow用户
提问于 2013-04-02 19:52:26
回答 5查看 6.7K关注 0票数 1

对于此数组,

代码语言:javascript
复制
Array ( 
  [0] => 'HOST:' 
  [1] => 'killbill' 
  [2] =>  
  [3] =>  
  [4] =>  
  [5] =>  
  [6] =>  
  [7] => 
  [8] => 
  [9] => 
  [10] => 
  [11] => 'Loss%' 
  [12] => 
  [13] => 
  [14] => 'Snt' 
  [15] => 
  [16] => 
  [17] => 'Last' 
  [18] => 
  [19] => 
  [20] =>'id'
)

它有空的values.by,使用它给出的代码

代码语言:javascript
复制
foreach($array as $key => $subarray) {
    $array[$key] = preg_grep('/^$/', $subarray, PREG_GREP_INVERT);
}

array ( 
  [0] => HOST: 
  [1] => killbill 
  [11] => Loss% 
  [14] => Snt 
  [17] => Last 
  [20] =>id
)

这意味着它删除了所有的空格。但它具有原始的键值。(compair高于一,低于一。然后就可以清楚地知道我在说什么了).but我想要这样。

代码语言:javascript
复制
array ( 
  [0] => 'HOST:' 
  [1] => 'killbill' 
  [2] => 'Loss%'
  [3] => 'Snt' 
  [4] => 'Last' 
  [5] => 'id'
)

键值为1、2、3、4....我怎么才能做到这一点。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-04-02 19:55:32

只需使用它而不是Foreach

代码语言:javascript
复制
array_values(array_filter($array));

这将删除空间并重新排序您的数组。

看:http://codepad.org/howl3Opj

票数 4
EN

Stack Overflow用户

发布于 2013-04-02 19:58:00

只需使用array_filter()即可。

代码语言:javascript
复制
$array = array_filter($array);

这将删除所有空值--即空白、nullfalse、零。

如果您只想删除空字符串的值并保留其他空值(例如零),您可以为array_filter()指定第二个参数,该参数允许您定义一个函数来指定应该过滤哪些元素。

代码语言:javascript
复制
$array = array_filter($array, function($val) {return $val!=='';});

希望这能有所帮助。

票数 1
EN

Stack Overflow用户

发布于 2013-04-02 19:54:24

试一下这个功能,它会帮你解决这个问题

代码语言:javascript
复制
$arr = array_map('array_values', $arr);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15763393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档