src/Utilities/Arrays.php
public static function issetRecursive(array $array, array $keys)
    {
        /*
         * No elements?
         * Nothing to do
         */
        if (empty($array)) {
            return false;
        }

        $isset = false;

        foreach ($keys as $key) {
            $isset = isset($array[$key]);

            if ($isset) {
                $newArray = $array[$key];
                array_shift($keys);

                if (is_array($newArray) && !empty($keys)) {
                    $isset = self::issetRecursive($newArray, $keys);
                }
            }

            break;
        }

        return $isset;
    }
public static function issetRecursive(array $array, array $keys)
    {
        /*
         * No elements?
         * Nothing to do
         */
        if (empty($array)) {
            return false;
        }

        $isset = false;

        foreach ($keys as $key) {
            $isset = isset($array[$key]);

            if ($isset) {
                $newArray = $array[$key];
                array_shift($keys);

                if (is_array($newArray) && !empty($keys)) {
                    $isset = self::issetRecursive($newArray, $keys);
                }
            }

            break;
        }

        return $isset;
    }
public static function issetRecursive ( array $ array , array $ keys ) { /*
         * No elements?
         * Nothing to do
         */ if ( empty ( $ array ) ) { return false ; } $ isset = false ; foreach ( $ keys as $ key ) { $ isset = isset ( $ array [ $ key ] ) ; if ( $ isset ) { $ newArray = $ array [ $ key ] ; array_shift ( $ keys ) ; if ( is_array ( $ newArray ) && ! empty ( $ keys ) ) { $ isset = self :: issetRecursive ( $ newArray , $ keys ) ; } } break ; } return $ isset ; }
Returns information if given path of keys are set is given array.
The keys should be delivered in the same order as used by source array.

@param array $array The array to check
@param array $keys  Keys, path of keys, to find in given array
@return bool

Examples:
a) $array
[
'some key' => [
'another some key' => [
'yet another key' => 123,
],
'some different key' => 456,
]
]

b) $keys
[
'some key',
'another some key',
'yet another key',
]
Returns information if given path of keys are set is given array . The keys should be delivered in the same order as used by source array .