3v4l.org

run code in 300+ PHP versions simultaneously
<?php $inputArray = array('first-key' => 'first value', 'second-key' => 'second value', array('foo-1' => 'val', 'bar'=> 'value', 'foo-2' => 'val2'), array('soup' => 'carrots', 'fruit' => 'banana') ); $outputArray = array_filter( $inputArray, function ($element) { return ! is_array($element) || ! empty( array_filter($element, function($key) { return strpos($key, 'foo-') === 0; }, ARRAY_FILTER_USE_KEY) ); } ); var_dump($outputArray);
Output for 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.4, 8.3.6 - 8.3.27, 8.4.1 - 8.4.14
array(3) { ["first-key"]=> string(11) "first value" ["second-key"]=> string(12) "second value" [0]=> array(3) { ["foo-1"]=> string(3) "val" ["bar"]=> string(5) "value" ["foo-2"]=> string(4) "val2" } }
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 array(3) { ["first-key"]=> string(11) "first value" ["second-key"]=> string(12) "second value" [0]=> array(3) { ["foo-1"]=> string(3) "val" ["bar"]=> string(5) "value" ["foo-2"]=> string(4) "val2" } }

preferences:
140.29 ms | 408 KiB | 5 Q