@ 2017-08-09T22:15:20Z <?php
declare(strict_types=1);
$incomingArray = [
'foo' => 'abc',
'bar' => null,
'candy' => 1,
'foobar' => true,
'barfoo' => false,
];
$myKeyCheck = ['foo', 'bar', 'candy', 'foobar', 'barfoo'];
$iterator = function($a, $b) {
return $a === null;
};
$filter = function($a) {
return $a !== null;
};
\var_dump(\array_filter(\array_uintersect($incomingArray, \array_flip($myKeyCheck), $iterator), $filter));
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 8.0.0 - 8.0.30 , 8.1.0 - 8.1.27 , 8.2.0 - 8.2.17 , 8.3.0 - 8.3.4 Deprecated: array_uintersect(): Returning bool from comparison function is deprecated, return an integer less than, equal to, or greater than zero in /in/2GLdK on line 22
array(4) {
["foo"]=>
string(3) "abc"
["candy"]=>
int(1)
["foobar"]=>
bool(true)
["barfoo"]=>
bool(false)
}
Output for 7.0.0 - 7.0.20 , 7.1.0 - 7.1.20 , 7.2.6 - 7.2.33 , 7.3.16 - 7.3.33 , 7.4.0 - 7.4.33 array(4) {
["foo"]=>
string(3) "abc"
["candy"]=>
int(1)
["foobar"]=>
bool(true)
["barfoo"]=>
bool(false)
}
preferences:dark mode live preview
150.82 ms | 402 KiB | 168 Q