private function loadPhpFile($path)
    {
        try {
            $data = include $path;
        } catch (Exception $e) {
            $message = sprintf('PHP file "%s" could not be parsed: %s', $path, $e->getMessage());
            throw new UnexpectedValueException($message, 0, $e);
        } catch (Throwable $e) {
            $message = sprintf('PHP file "%s" could not be parsed: %s', $path, $e->getMessage());
            throw new UnexpectedValueException($message, 0, $e);
        }

        if (is_array($data) || ($data instanceof Traversable)) {
            return $data;
        }

        return [];
    }