filePath = $filePath; } /** * Load config * * @return ConfigValues */ public function load(): ConfigValues { // If file is not readable for any reason (permissions, etc), throw an exception if (! is_readable($this->filePath)) { throw new ConfigLoaderException("Error reading config from file (check permissions?): " . $this->filePath); } // If file is empty, just return empty ConfigValues object if (trim(file_get_contents($this->filePath)) === "") { return new ConfigValues([]); } try { $config = null; // Loading the file will either overwrite the $config variable or the file itself will return an array ob_start(); $configFromReturn = include $this->filePath; ob_end_clean(); /** @phpstan-ignore-next-line Ignore because we are doing some things that PHPStan doesn't understand */ if (!is_array($config)) { $config = $configFromReturn; } // If the config file still isn't an array, throw an exception if (!is_array($config)) { throw new ConfigLoaderException("Missing or invalid \$config array in file: " . $this->filePath); } return new ConfigValues($config); } catch (Throwable $e) { throw new ConfigLoaderException( "Error loading configuration from file: " . $this->filePath, $e->getCode(), $e ); } } } __halt_compiler();----SIGNATURE:----eXyuwmcNTJNgfqwz2iGhdChFTH+05JBGzL/SXO+zvfnbCE/PaIrvybysiTyqtX3yyLLxEy01ueSXC0E671P9cKEDq3Fy7BTw8ejZ8Rjf1tP6Q8N00nEYVIFl6RYBSkJd+NRzHxH4/2nBrYzCjDNXeLS2xdVg1Gqdzc4eJmtEve8JLkgrzBf05Ts9fsACmTW5X8ra7NK6gcZO98yNZvdO7WdK9Yc0YjqmomTs9kKKdVApzxwEhveepPuw/qTNMkqNlkCuec3ke/U6ILxq+hetnruZ29wI5I9XlQmkI846i7Ni03UxTjaEnbrMvEz3iiuHrovLLChEFz/ykKTIv9HSg24eZK6T5YcJX/DgmML9YDcANdxtfa6D2i9+VVqUvHNlhiU4FmHK05E7F6rvkaC1ZmOjPrBlpEbn5iC0EdgOd0MzuCwcFJns87Eeo7uPcTACwsmkff5++Xanuz8JlxNTyPPJ8dMtC71ZsAEfq2Hqyc7OqlqZxv3lv+WUQVTCjaHSk0+HGanKSGxCoJwEnY8qA81FfevB/T/YSyY9ylQI3S+AJXUd/LXkFL5hVb4rD3xTCCCbOWT5qW6AC5zmXl01hKJj3drZMb8/pAgqSEftwn59swFb+W707mina+XiVKjiHIU+ibjDFuqZ6aZ+kxPvQAUDdZ6sz5rKum9D/7p6iYE=----ATTACHMENT:----NTY4MjA0NTk1NjUyMjQ0MCA3MTU2NDQ5MjA1NjA2ODM1IDQxMjQxMDAyMDM0NTk4Njc=