Avatar ·

Wie erhalte ich den ersten Schlüssel in einem assoziativen PHP-Array (ohne den Pointer zurückzusetzen)?

Hallo zusammen! Ich bin ein PHP-Anfänger und habe ein Problem mit Arrays.

Ich habe ein assoziatives Array, das entweder leer sein kann oder Daten enthält. Ich muss nur den ersten Schlüssel dieses Arrays abrufen, ohne seinen internen Pointer zu ändern. Das Problem ist, dass ich nicht im Voraus weiß, welche Schlüssel das Array haben wird – sie können sowohl numerisch als auch stringbasiert sein.

Hier ist ein Beispiel meines Codes:

$users = [
    'john' => ['name' => 'John', 'age' => 30],
    'jane' => ['name' => 'Jane', 'age' => 25],
    'bob'  => ['name' => 'Bob', 'age' => 35]
];

// Ich muss den ersten Schlüssel 'john' abrufen
$firstKey = ???

Ich habe die Funktionen key(), reset() und array_keys() ausprobiert, aber jede hat ihre Nachteile:

  • key() – gibt den aktuellen Schlüssel zurück, nicht den ersten. Wenn der Pointer bereits verschoben wurde, ist das Ergebnis falsch.
  • reset() – setzt den Pointer zurück, was ich vermeiden möchte.