There are several ways to provide this functionality for versions prior to PHP 7.3.0. It is possible to use array_keys(), but that may be rather inefficient. It is also possible to use reset() and key(), but that may change the internal array pointer. An efficient solution, which does not change the internal array pointer, written as polyfill:

<?php

if (! function_exists ( 'array_key_first' )) {

function array_key_first (array $arr ) {

foreach( $arr as $key => $unused ) {

return $key ;

}

return NULL ;

}

}

?>