laravel-admin 编辑器基于ckeditor上传图片,并带PHP图片处理及回调方法

一、版本说明

laravel 5.5

ckEditor 3.6.3

laravel-admin 1.5.*

二、扩展ckeditor编辑器。

网上找到ckEditor 3.6.3下载备用。

添加编辑器扩展参考laravel-admin官网方档,http://laravel-admin.org/docs/#/zh/model-form-field-management,这里不再过多介绍。

三、配置

根据laravel-admin 配置完成以后,是不支持图片上传功能的,需要进行配置。

1、config.js

在路径:public\packages\ckeditor\config.js中添加:config.filebrowserImageUploadUrl = "/admin/upload";

2、配置路由:

Route::post('/admin/upload','UploadeController@index');

3、去除csrf验证

laravel-admin 编辑器基于ckeditor上传图片,并带PHP图片处理及回调方法_第1张图片

4、控制器

UploadeController.php

namespace App\Admin\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class UploadController extends Controller
{
    function index(Request $request)
    {

        $ck = $request->get('CKEditorFuncNum');
        if ($request->hasFile('upload')) {     //uploadckeditor默认的file提交ID
            $file = $request->file('upload');   //从请求数据内容中取出图片的内容
            $allowed_extensions = ["png", "jpg", "gif"]; //允许的图片后缀
            if ($file->getClientOriginalExtension() && !in_array($file->getClientOriginalExtension(), $allowed_extensions)) {
                return '图片后缀只支持png,jpg,gif,请检查!';
            }
            $destinationPath = getenv('UPLOAD_FILE_PATH');  //图片存放路径
            $extension = $file->getClientOriginalExtension();  //获得文件后缀
            $fileName = md5(time()) . '.' . $extension;  //创建图片名字
            $result = $file->move($destinationPath, $fileName); //存储图片到路径
            $url = getenv('FILE_URL') . '/' . $fileName; //输出图片网站中浏览路径
            //echo $url;
            echo "";

        }
    }
}
5、效果

laravel-admin 编辑器基于ckeditor上传图片,并带PHP图片处理及回调方法_第2张图片

laravel-admin 编辑器基于ckeditor上传图片,并带PHP图片处理及回调方法_第3张图片

laravel-admin 编辑器基于ckeditor上传图片,并带PHP图片处理及回调方法_第4张图片



你可能感兴趣的:(PHP,框架,学习笔记)