I have an associative array like this:
$myarray = array(
'key1' => 'value1'
'key2' => 'value1','value2','value3', null ,'value4'
null
'key4' => null ,'value2','value3', null
'key5'
null
);
I want to remove the null values and I tried this:
$collection = collect($myarray);
$filtered = $collection->filter(function ($value, $key) {
return $value != null;
});
The result is this:
$myarray = array(
'key1' => 'value1'
'key2' => 'value1','value2','value3', null ,'value4'
'key4' => null ,'value2','value3', null
'key5'
);
But my desired result is like this:
$myarray = array(
'key1' => 'value1'
'key2' => 'value1','value2','value3','value4'
null
'key4' => 'value2','value3'
'key5'
null
);
How can I do this?
PS: I'm using Laravel 5.4.36
$filtered->all();, the result is[ "key1" => "value1" "key2" => "value1" 0 => "value2" 1 => "value3" 3 => "value4" 5 => "value2" 6 => "value3" 8 => "key5" ]