3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types=1); $incomingArray = [ 'foo' => 'abc', 'bar' => null, 'candy' => 1, 'foobar' => true, 'df' => 'this should not be in results', 'aa' => '', ]; $myKeyCheck = ['foo', 'bar', 'candy', 'foobar', 'barfoo', 'fd', 'aa']; $filter = function($a) { return is_string($a) && mb_strlen(\trim($a)) > 0; }; \var_dump(\array_filter(\array_intersect_key($incomingArray, \array_flip($myKeyCheck)), $filter));
Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
array(1) { ["foo"]=> string(3) "abc" }

preferences:
203.45 ms | 403 KiB | 215 Q