Как получить первый элемент из ассоциативного массива PHP? - PullRequest
129 голосов
/ 24 октября 2009

Если бы у меня был массив вроде:

$array['foo'] = 400;
$array['bar'] = 'xyz';

И я хотел получить первый элемент из этого массива, не зная ключа для него, как бы я это сделал? Есть ли функция для этого?

Ответы [ 15 ]

1 голос
/ 10 октября 2018

Начиная с PHP 7.3.0 можно обойтись без сброса внутреннего указателя. Вы бы использовали array_key_first. Если вы уверены, что ваш массив имеет значения, то вы можете просто сделать:

$first = $array[array_key_first($array)];

Скорее всего, вы захотите обработать случай, когда массив пуст:

$first = (empty($array)) ? $default : $array[array_key_first($array)];
1 голос
/ 30 июня 2017

Вы можете сделать:

$values = array_values($array);
echo $values[0];
1 голос
/ 17 июня 2014

Я делаю это, чтобы получить первое и последнее значение. Это работает с большим количеством значений тоже.

$a = array(
    'foo' => 400,
    'bar' => 'xyz',
);
$first = current($a);   //400
$last = end($a);    //xyz
1 голос
/ 24 октября 2009

Вы можете использовать array_shift

0 голосов
/ 10 июня 2019

вы можете просто использовать $array[0]. это всегда даст вам первый предмет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...