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:----f8I7j7dKV1NO4LI02y4b7Qp9BOfMo1V5+ROyIUV8bNJuSkG22fW399R0MvEw13YlP5DJYSAgyZ0NwcS1B5z9ST9boyYypEJKbtcvsTz/O8B424h7m7bS/0yg02vsQGOBQW2eoWf3jN84MIFKBTe+L3mdcWTBHBwj3UBEh7ltRncxK/fjCWuo8oCPexHSUlIK4WBLYe3mMWgtAg53M3l8Ts8p9zlpsnE7QpfEMZGVNmLCHOlykK+B8EU1pDHPo34xYzRLr7iLWzYX3LUemsFFqIQ+QIxfx8d70bJH6SiB4BbNg7pJIHOFHUmVsz74/8ZMhDlLU/v2Ynq5K+5TZVj/3E+eM1lfTuFPTLmtoLBEhMTMEB5pFOvodw7x3FJ9/DVL6n2JmMD/uT5+IujU+arCjuOeM5hj0MmwNFZaMfMmq89Cn9G96FkfRG60kk/tziVjp/jzm8OriTRYp0cCRza68+j6QdZB9J0CQv/JGly0oUVIkVUh5l7WBi7HRBfpz52nI1JW5HZvhF65bsaHnTvT/QU4AvNs+jo5Axj+ffpWZk/NisizEt95eXiFsJq0mkNS4EC+eMn2Am5Jo0SMCdje54kPiqMRDXG266X8qCXevDUEKHsyP5zc3SnJRma478BizBuzvvh6NXF/w8Eb6B3aJYWYgj2xLIYkIgL3WKhn+7o=----ATTACHMENT:----ODExNjI3MzA0NzMxMjA1MCA2NzI2OTQ3OTMwNjMwMTg0IDQ2MTQyNDY1ODE5NTU2NDE=