laravel-admin-extensions / UEditor

UEditor extension for laravel-admin
MIT License
62 stars 17 forks source link

能否升级下支持 Laravel 9.X #41

Open imnpc opened 2 years ago

imnpc commented 2 years ago

目前只能支持到 Laravel 8.X

crmzhangwei commented 3 months ago

vendor\overtrue\laravel-ueditor\src\StorageManager.php 代码路径

改下代码可以支持 protected function getUploadConfig($action) { $upload = config('ueditor.upload');

    $prefixes = [
        'image', 'scrawl', 'snapscreen', 'catcher', 'video', 'file',
        'imageManager', 'fileManager',
    ];

    $config = [];

    foreach ($prefixes as $prefix) {
        if ($action == $upload[$prefix.'ActionName']) {
            $config = [
                'action' => self::array_get($upload, $prefix.'ActionName'),
                'field_name' => self::array_get($upload, $prefix.'FieldName'),
                'max_size' => self::array_get($upload, $prefix.'MaxSize'),
                'allow_files' => self::array_get($upload, $prefix.'AllowFiles', []),
                'path_format' => self::array_get($upload, $prefix.'PathFormat'),
            ];

            break;
        }
    }

    return $config;
}
static function array_get($array, $key, $default = null)
{
    if (is_null($key)) {
        return $array; 
    }

    if (isset($array[$key])) {
        return $array[$key];
    }

    foreach (explode('.', $key) as $segment) {
        if (! is_array($array) || ! array_key_exists($segment, $array)) {
            return value($default);
        }

        $array = $array[$segment];
    }
    return $array;
}

/**