В Algol и его потомках, таких как Pascal и Ada, были использованы эквиваленты Colon, так как он приближается к символу слева. A / -эквиваленты для сравнения были начаты с языка С.
В Prolog нет различия между назначением и тестом равенства.
Начиная с PHP 7.3 , есть новая встроенная функция под названием array_key_first ()
, которая будет извлекать первый ключ из заданного массива без сброса внутреннего указателя. Дополнительную информацию можно найти в документации .
Вы можете использовать reset
и клавишу
:
reset($array);
$first_key = key($array);
По сути, это то же самое, что и ваш исходный код, но с немного меньше накладных расходов, и становится более очевидно, что происходит.
Просто не забудьте вызвать reset
, или вы можете получить любой из ключей в массиве. Вы также можете использовать end
вместо reset
, чтобы получить последний ключ.
Если вы хотите, чтобы ключ получил первое значение, reset
фактически возвращает его :
$first_value = reset($array);
Однако есть один особый случай, на который следует обратить внимание (поэтому сначала проверьте длину массива):
$arr1 = array(false);
$arr2 = array();
var_dump(reset($arr1) === reset($arr2)); // bool(true)
key ($ an_array)
даст вам первое изменение ключа
для каждого Blixt: вы должны вызвать reset ($ array);
перед key ($ an_array)
для сброса указателя на начало массива.
array_keys
возвращает массив ключей. Возьмите первую запись. Кроме того, вы можете вызвать reset
в массиве, а затем ключ
. Последний подход, вероятно, немного быстрее (хотя я его не тестировал), но у него есть побочный эффект сброса внутреннего указателя.