我有一个数组,它有大约 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;
}
我想做的事情与此非常相似,但是这适用于可以具有 nn 键值的数组,并且我不依赖于键和值来确定什么是什么,何时何地。如上所示,基本上只会删除所有内容,然后重建数组。我被卡住的地方是试图弄清楚如何模仿上述功能,但我保留了我需要的键。
原文由 chris 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果我理解正确你在做什么,你可以使用
array_filter()
或者你可以这样做: