欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

求教 多维数组中剔除空记录 (上次解决的有个bug

程序员文章站 2022-05-19 13:31:01
...
求教 多维数组中删除空记录 (上次解决的有个bug
本帖最后由 A9925 于 2015-03-16 18:29:58 编辑 原贴
:http://bbs.csdn.net/topics/390997712



最新疑问,当数组里有一个是 ‘0’ 的值时,会把这个元素删除掉,而实际上这是一条有值的元素
["status"]=>
string(1) "0"

求教 多维数组中剔除空记录 (上次解决的有个bug


$a = array(
array('a' => 0, 'b'=> ''),
array('a' => 0, 'b'=> ''),
array('a' => 1, 'b'=> '2'),
);
print_r(array_values(array_no_empty($a)));

function array_no_empty($arr) {
if (is_array($arr)) {
foreach ( $arr as $k => $v ) {
if (empty($v)) unset($arr[$k]);
elseif (is_array($v)) {
$t = array_no_empty($v);
if($t) $arr[$k] = $t;
else unset($arr[$k]);
}
}
}
return $arr;
}
这个方法再怎么改进,谢谢!
------解决思路----------------------
if( empty() ) 改为 if($v === false){ unset .......... }
------解决思路----------------------
if (empty($v)) unset($arr[$k]);
改为
if (empty($v) && $v !== 0) unset($arr[$k]);

求教 多维数组中剔除空记录 (上次解决的有个bug

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 求教 多维数组中剔除空记录 (上次解决的有个bug
  • 专题推荐