`
Tenacious
  • 浏览: 22079 次
  • 性别: Icon_minigender_1
  • 来自: 大连
最近访客 更多访客>>
社区版块
存档分类
最新评论

清除数组中的空值,并重新排列数组键值

阅读更多
//array_filter()函数的功能是利用回调函数来对数组进行过滤,如果没有回调函数,那么默认就是删除数组中值为false的项目。
例如:
$FileArray=array(0=>'1',1=>'',2=>'',3=>'go');
var_dump(array_file($FileArray))
输出结果为:
array(size=2)
    0 => string '1' (length=1)
    3 => string 'go' (length=2)
这样就引申出来一个新问题,如果我想对array_filter()处理过的新数组的键名序列化成0,1,2,3这样的怎么办呢?
这在数组比较中是很有用的,这里有两个函数可以选择array_values(),sort(). 
 
array_values()返回数组中所有的值,并给其建立数字索引。(注意,用这个之后key就是数字索引了)
 
sort()对数组进行排序。当函数结束时数组单元将被从最低到最高重新安排。成功返回true (注意: 本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。 )*sort函数返回值是布尔类型。
 

这里我选择了array_values()函数来处理:

var_dump(array_values(array_filter($FileArray)));
输出结果为:
array(size=2)
    0 => string '1' (length=1)
    1=> string 'go' (length=2)
0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics