如何将数组的空值移到最后一个位置?
例如:
$givenArray = array(
0=>'green',
1=>'',
2=>'red',
3=>'',
4=>'blue'
);
$requiredArray = array(
0=>'green',
1=>'red',
2=>'blue',
3=>'',
4=>''
);
规定不对非空值进行排序。应该保持原样,即只有空值应移动到数组的末尾。
我确实需要我的示例所显示的内容。
最佳答案
这个线程中已经有更好/更优雅的答案,但这也可以工作:
//strip empties and move to end
foreach ($givenArray as $key => $value)
{
if ($value === "")
{
unset($givenArray[$key]);
$givenArray[] = $value;
}
}
// rebuild array index
$givenArray = array_values($givenArray);
Codepad demo