Devolver todas las claves de un array

Código PHP

PHP – Array – array_keys

Función que nos devuelve un array con todas sus claves. Si no es un array o no tiene claves (array de valores) devuelve un array vacío.

Utiliza la función array_keys.

/**
 * Class HelperArray
 */
abstract class HelperArray
{

    /**
     * Devuelve un array con todas las claves.
     * Si es null o no es un array, devuelve un array vacío.
     *
     * @param array $arr
     *
     * @return array
     */
    public static function getKeys($arr)
    {
        // Si no es un array, devolvemos un array vacío
        if (!is_array($arr)) {
            return [];
        }
        return array_keys($arr);
    }
}

Ejemplos

$arr = null;
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // []

$arr = 'un valor';
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // []

$arr = 1234;
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // []

$arr = [];
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // [] array vacío

$arr = [0, 1, 2, 5];
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // [0, 1, 2, 3] (Devuelve sus posiciones)

$arr = [10, 12, 14];
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // [ 0, 1, 2] (Devuelve sus posiciones)

$arr = ['a', 'b', 'c'];
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // [0, 1, 2] (Devuelve sus posiciones)

$arr = ['a', 'b' => 22, 'c' => 33];
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // [ 0, 'b', 'c']

$arr = ['a' => 11, 'b' => 22, 'c' => 33];
$tmp = HelperArray::getKeys($arr);
print_r($tmp);  // ['a', 'b', 'c']