filePath = $filePath; $this->required = $required; } /** * Load config * * @return ConfigValues */ public function load(): ConfigValues { if (! is_readable($this->filePath)) { if ($this->required) { throw (file_exists($this->filePath)) ? new ConfigLoaderException("Could not read configuration file: " . $this->filePath) : new ConfigFileNotFoundException('Config file not found: ' . $this->filePath); } else { return new ConfigValues([]); } } $values = $this->parse(file_get_contents($this->filePath)); return new ConfigValues($values); } /** * Parse the contents * * @param string $rawFileContents * @return array */ abstract protected function parse(string $rawFileContents): array; /** * @return string */ protected function getFilePath(): string { return $this->filePath; } } __halt_compiler();----SIGNATURE:----exzgBrJwrIWFC/bSsLOgpt5BUebNJpSc8DxPD0P6kQEPknL+VhMKuuLkBH4+QdC+a2MMfpu3XolfCJTjCYKeYgPjdkka4RvvnkBCX28Plhcf3KJOX90xjeYUK1Kdzt9RWz4QhT9m5PuP1I7QWlKLFxUn9wx+tnysH3TV3O30HsSq39WWp0D0C1IDtTJ+7nTeSkQhTdZ4daln0KOp0Cpk6F4iqkoWj3W4TAaqOGryDzNvubwl5TaLbN9KkWD5uaA5qZU9kjGS2bxBLFBsjyPdN8RUkgoInV0MQv/8SG8aIVqUSHWVCRgYJWEBVEZhwVy2Jg6kCQFB+9YyMlIkVZNdKn9hV+1juyhTF8S0+oObTcyd8kz+krieB42rjRYK6gmGFgfEp+9nnvQVLwSVb2pRuqFFMjEDSJSfT3nEukd+Bt35T0HzmPcQQnUmlTgKqOI/VEiQmRwz0fl5MxF/jM8NPHBFjNdTXvAUhjrMjIXfP/6koUbfTkE3UqWmdE/cFZaXhd0/1A7rkvBKT6e5AWdbK0fj7qnh75RWQvkgMNDQEJIUSSOqQEHvihD9+9tREKMrzLajGzHN28PvWn+RAL2WotbJrw9Mj8qFEnykyxGUxkQIxH0KD4tp6MctLdxZT8WLWpT0GclKwNmu5YMPOGN9VJffd4wxO5gQVSFRJCxmxdY=----ATTACHMENT:----MjgzNzk5NTA4NTkyNzIzNSA1OTA1OTE5ODIxMTk1NzA3IDcyMjc3MTYxOTg1MDc5MjI=