original_string: public function get($category, $key = null, $default = null)
      {
          $this->load($category);
  
          if ($key === null) {
              return isset($this->items[$category]) && !empty($this->items[$category]) ? $this->items[$category] : $default;
          }
  
          if (is_string($key)) {
              return isset($this->items[$category][$key]) ? $this->items[$category][$key] : $default;
          }
  
          if (is_array($key)) {
              $result = [];
              foreach ($key as $val) {
                  $result[$val] = isset($this->items[$category][$val]) ? $this->items[$category][$val] : (is_array($default) && isset($default[$val]) ? $default[$val] : null);
              }
              return $result;
          }
  
          return $default;
      }
code: public function get($category, $key = null, $default = null)
      {
          $this->load($category);
  
          if ($key === null) {
              return isset($this->items[$category]) && !empty($this->items[$category]) ? $this->items[$category] : $default;
          }
  
          if (is_string($key)) {
              return isset($this->items[$category][$key]) ? $this->items[$category][$key] : $default;
          }
  
          if (is_array($key)) {
              $result = [];
              foreach ($key as $val) {
                  $result[$val] = isset($this->items[$category][$val]) ? $this->items[$category][$val] : (is_array($default) && isset($default[$val]) ? $default[$val] : null);
              }
              return $result;
          }
  
          return $default;
      }
code_tokens: public function get ( $ category , $ key = null , $ default = null ) { $ this -> load ( $ category ) ; if ( $ key === null ) { return isset ( $ this -> items [ $ category ] ) && ! empty ( $ this -> items [ $ category ] ) ? $ this -> items [ $ category ] : $ default ; } if ( is_string ( $ key ) ) { return isset ( $ this -> items [ $ category ] [ $ key ] ) ? $ this -> items [ $ category ] [ $ key ] : $ default ; } if ( is_array ( $ key ) ) { $ result = [ ] ; foreach ( $ key as $ val ) { $ result [ $ val ] = isset ( $ this -> items [ $ category ] [ $ val ] ) ? $ this -> items [ $ category ] [ $ val ] : ( is_array ( $ default ) && isset ( $ default [ $ val ] ) ? $ default [ $ val ] : null ) ; } return $ result ; } return $ default ; }
docstring: Returns settings.
  
  @param string $category Category name
  @param string|array $key Single or multiple keys in array
  @param mixed $default Default value when setting does not exist
  @return mixed Setting value
  @throws Exception
docstring_tokens: Returns settings .