(PHP 7 >= 7.3.0, PHP 8)
array_key_first —Gets the first key of an array
Get the first key of the givenarray without affecting the internal array pointer.
arrayAn array.
Returns the first key ofarray if the array is not empty;null otherwise.
Example #1 Basicarray_key_first() Usage
<?php
$array= ['a'=>1,'b'=>2,'c'=>3];
$firstKey=array_key_first($array);
var_dump($firstKey);
?>The above example will output:
string(1) "a"
There are several ways to provide this functionality for versions prior to PHP 7.3.0. It is possible to usearray_keys(), but that may be rather inefficient. It is also possible to usereset() andkey(), 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')) {
functionarray_key_first(array$arr) {
foreach($arras$key=>$unused) {
return$key;
}
returnNULL;
}
}
?>A polyfill serves the purpose of retroactively incorporating new features from PHP releases into older PHP versions, ensuring API compatibility.In PHP 7.3.0, the array_key_first() function was introduced, demonstrated in the following example:<?php$array= ['first_key'=>'first_value','second_key'=>'second_value',];var_dump(array_key_first($array));?>The provided polyfill in this documentation allows the convenient use of array_key_first() with API compatibility in PHP versions preceding PHP 7.3.0, where the function was not implemented:<?phpif (!function_exists('array_key_first')) { functionarray_key_first(array$arr) { foreach ($arras$key=>$unused) { return$key; } returnnull; }}$array= ['first_key'=>'first_value','second_key'=>'second_value',];var_dump(array_key_first($array));?>