array_key_first

(PHP 7 >= 7.3.0, PHP 8)

array_key_firstErmittelt den ersten Schlüssel eines Arrays

Beschreibung

array_key_first(array $array): int|string|null

Ermittelt den ersten Schlüssel von array, ohne den internen Array-Zeiger zu verändern.

Parameter-Liste

array

Ein Array

Rückgabewerte

Gibt den ersten Schlüssel von array zurück, wenn das Array nicht leer ist, andernfalls wird null zurückgegeben.

Beispiele

Beispiel #1 Grundlegende Verwendung von array_key_first()

<?php
$array
= ['a' => 1, 'b' => 2, 'c' => 3];

$firstKey = array_key_first($array);

var_dump($firstKey);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

string(1) "a"

Anmerkungen

Tipp

Es gibt mehrere Möglichkeiten, diese Funktionalität für PHP-Versionen vor 7.3.0 bereitzustellen. Es ist möglich, array_keys() zu verwenden, aber das ist eher ineffizient. Es ist auch möglich, reset() und key() zu verwenden, aber das kann den internen Array-Zeiger verändern. Eine effiziente Lösung, die den internen Array-Zeiger nicht verändert, geschrieben als Polyfill:

<?php
if (!function_exists('array_key_first')) {
function
array_key_first(array $arr) {
foreach(
$arr as $key => $unused) {
return
$key;
}
return
NULL;
}
}
?>

Siehe auch

  • array_key_last() - Ermittelt den letzten Schlüssel eines Arrays
  • reset() - Setzt den internen Zeiger eines Arrays auf sein erstes Element
add a note add a note

User Contributed Notes 3 notes

up
1
nekto at nekto dot com dot ua
2 years ago
A proper one-liner polyfill for version < 7.3:

<?php
function array_key_first((array) $a)
{
    return
array_keys($a)[0];
}
up
-6
Vee W.
2 years ago
Another way to get first array key with PHP older than 7.3.

<?php

$array
= ['one', 'two', 'three'];
$array2 = ['one' => 'Number one', 'two' => 'Number two'];

reset($array);// go to first array
echo key($array);// get its key (first array)
// expect 0.

reset($array2);
echo
key($array2);
// expect one.
up
-7
github.com / ahsankhatri
2 years ago
One-liner polyfill (php version < 7.3.0)

<?php
function array_key_first(array $array)
{
    return
key(array_slice($array, 0, 1));
}
To Top