3v4l.org

run code in 300+ PHP versions simultaneously
<?php $ar = array('mopo_1' => 'honta', 'hinta' => 200, 'mopo_2' => 'jamaha', 'hinta' => 320, 'mopo_3' => 'susuki', 'hinta' => 310); function array_key_exists_wildcard ( $array, $search, $return = '' ) { $search = str_replace( '\*', '.*?', preg_quote( $search, '/' ) ); $result = preg_grep( '/^' . $search . '$/i', array_keys( $array ) ); if ( $return == 'key-value' ) return array_intersect_key( $array, array_flip( $result ) ); return $result; } $search = 'mopo*'; print_r( array_key_exists_wildcard( $ar, $search ) ); print_r( array_key_exists_wildcard( $ar, $search, 'key-value' ) );
Output for 5.5.24 - 5.5.35, 5.6.8 - 5.6.28, 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.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
Array ( [0] => mopo_1 [2] => mopo_2 [3] => mopo_3 ) Array ( [mopo_1] => honta [mopo_2] => jamaha [mopo_3] => susuki )

preferences:
160.9 ms | 404 KiB | 230 Q