original_string: public static function get(array $array, ...$keys)
      {
          $key = array_shift($keys);
  
          if (!isset($array[$key])) {
              return null;
          }
  
          if (empty($keys)) {
              return $array[$key] ?? null;
          }
  
          if (!\is_array($array[$key])) {
              return null;
          }
  
          return self::get($array[$key], ...$keys);
      }
code: public static function get(array $array, ...$keys)
      {
          $key = array_shift($keys);
  
          if (!isset($array[$key])) {
              return null;
          }
  
          if (empty($keys)) {
              return $array[$key] ?? null;
          }
  
          if (!\is_array($array[$key])) {
              return null;
          }
  
          return self::get($array[$key], ...$keys);
      }
code_tokens: public static function get ( array $ array , ... $ keys ) { $ key = array_shift ( $ keys ) ; if ( ! isset ( $ array [ $ key ] ) ) { return null ; } if ( empty ( $ keys ) ) { return $ array [ $ key ] ?? null ; } if ( ! \ is_array ( $ array [ $ key ] ) ) { return null ; } return self :: get ( $ array [ $ key ] , ... $ keys ) ; }
docstring: Get an element to array by key and sub-keys
  
  @param array $array
  @param array ...$keys
  
  @return mixed|null
docstring_tokens: Get an element to array by key and sub - keys