Avatar ·

Cómo obtener la primera clave en un array asociativo de PHP (sin restablecer el puntero)

¡Hola a todos! Soy un desarrollador PHP principiante y tengo un problema con los arrays.

Tengo un array asociativo que puede estar vacío o contener datos. Necesito obtener solo la primera clave de este array, sin modificar su puntero interno. El problema es que no sé de antemano qué claves tendrá el array — pueden ser tanto numéricas como de tipo string.

Aquí hay un ejemplo de mi código:

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

// Necesito obtener la primera clave 'john'
$firstKey = ???

He probado a usar las funciones key(), reset() y array_keys(), pero cada una tiene sus inconvenientes:

  • key() — devuelve la clave actual, no la primera. Si el puntero ya está desplazado, el resultado será incorrecto.
  • reset() —