El uso de esta entrada:
$array=['foo',NULL,'bar',0,false,null,'0',''];
Hay algunas maneras que usted podría hacerlo. Demo
Es un poco fuera de tema para que aparezca comportamiento predeterminado codiciosos array_filter
's, pero si usted está buscando en Google a esta página, esta es probablemente importante información relevante para su proyecto/tarea:
var_export(array_values(array_filter($array))); // NOT GOOD!!!!!
Problemas en la salida :
array (
0 => 'foo',
1 => 'bar',
)
ya por los caminos que van a trabajar:
Método # 1: (array_values()
, array_filter()
w/!is_null()
)
var_export(array_values(array_filter($array,function($v){return !is_null($v);}))); // good
Método # 2: (foreach()
, array-auto indexado, !==null
) Método
foreach($array as $v){
if($v!==null){$result[]=$v;}
}
var_export($result); // good
# 3: (array_walk()
, matriz de índice automático, !is_null()
)
array_walk($array,function($v)use(&$filtered){if(!is_null($v)){$filtered[]=$v;}});
var_export($filtered); // good
Los tres métodos proporcionan la siguiente salida "libre de null":
array (
0 => 'foo',
1 => 'bar',
2 => 0,
3 => false,
4 => '0',
5 => '',
)