Elastica\Index\Settings::get PHP Метод

get() публичный Метод

If param is set, only specified setting is return. 'index.' is added in front of $setting.
public get ( string $setting = '' ) : array | string | null
$setting string OPTIONAL Setting name to return
Результат array | string | null Settings data
    public function get($setting = '')
    {
        $requestData = $this->request()->getData();
        $data = reset($requestData);
        if (empty($data['settings']) || empty($data['settings']['index'])) {
            // should not append, the request should throw a ResponseException
            throw new NotFoundException('Index ' . $this->getIndex()->getName() . ' not found');
        }
        $settings = $data['settings']['index'];
        if (!$setting) {
            // return all array
            return $settings;
        }
        if (isset($settings[$setting])) {
            return $settings[$setting];
        } else {
            if (strpos($setting, '.') !== false) {
                // translate old dot-notation settings to nested arrays
                $keys = explode('.', $setting);
                foreach ($keys as $key) {
                    if (isset($settings[$key])) {
                        $settings = $settings[$key];
                    } else {
                        return;
                    }
                }
                return $settings;
            }
            return;
        }
    }

Usage Example

Пример #1
0
 protected function verifySettings(Settings $settings)
 {
     $this->assertEquals('2', $settings->get('number_of_shards'));
     $this->assertEquals('0', $settings->get('number_of_replicas'));
 }