我有一个数组,它有大约12个潜在的键/值对.这是基于_POST / _GET
键不是0-n中的数字,我需要在适用的地方保留键值.我的问题是我知道有时会传递一个键,其值为null,空或等于”.如果是这种情况我想在处理我的数组之前修剪这些键.由于在没有任何东西的情况下跑下去会打破我的剧本.
不久之前,我要么做了或者发现了这个功能(我不记得它在我的武器库中已经存在了一段时间,不管怎么说).
function remove_array_empty_values($array,$remove_null_number = true) { $new_array = array(); $null_exceptions = array(); foreach($array as $key => $value) { $value = trim($value); if($remove_null_number) { $null_exceptions[] = '0'; } if(!in_array($value,$null_exceptions) && $value != "") { $new_array[] = $value; } } return $new_array; }
我喜欢做的与此非常相似,但是这适用于可以具有n-n个键值的数组,并且我不依赖于键以及确定什么时间和地点的值.由于上面将基本上删除所有内容然后只是重建数组.我被困在哪里试图弄清楚如何模仿上面的功能,但我保留了我需要的钥匙.
如果我正确理解你所追求的是什么,你可以使用array_filter(),或者你可以这样做:
foreach($myarray as $key=>$value) { if(is_null($value) || $value == '') unset($myarray[$key]); }