ueditor的php上传类,tp版本、可接入七牛、oss等

富文本编辑器是网站常用的一种工具,editor是百度旗下的一款开源免费的富文本编辑器,使用也很简单,今天将editor的服务端(php版)修改为

thinkphp框架适用版,目的就是方便对文件进行操作、上传到七牛、oss等平台。

首先修改ueditor的服务器地址:

<script  src="ueditor/1.4.3/ueditor.config.js"></script>    
<script  src="ueditor/ueditor/1.4.3/ueditor.all.min.js"></script>    

<script>    
UE.getEditor('content',{    
serverUrl:"/admin/upload/ueditor.html", //后端地址,这里处理所有的逻辑
});      
</script>

ueditor函数:

/**
 * 百度富文本编辑器TP版
 * @email wei@alipay168.cn
 * @author 小韦
 * @link http://blog.alipay168.cn
 * @Date: 2020/4/6 11:32
 */
function ueditor()
{
    error_reporting(E_ERROR);
    header("Content-Type: text/html; charset=utf-8");

    if (empty($this->request_params['action'])) {
        echo json_encode(array(
            'state' => '非法请求,参数不合法'
        ));
        exit();
    }
    $action = $this->request_params['action'];
    //实例化对象
    $objUpload = new UeditorServer();
    $objUpload->get_config();//初始化配置
    switch ($action) {
        case 'config':
            $result = json_encode($objUpload->config, JSON_UNESCAPED_UNICODE);
            break;

        /* 上传图片 */
        case 'uploadimage':
            /* 上传涂鸦 */
        case 'uploadscrawl':
            /* 上传视频 */
        case 'uploadvideo':
            /* 上传文件 */
        case 'uploadfile':
            $result = json_encode($objUpload->action_upload($action)->run()->getFileInfo(), JSON_UNESCAPED_UNICODE);
            break;

        /* 列出图片 、文件*/
        case 'listimage':
        case 'listfile':
            $result = $objUpload->action_list($action);
            break;

        /* 抓取远程文件 */
        case 'catchimage':
            $result = $objUpload->action_crawler();
            break;

        default:
            $result = json_encode(array(
                'state' => '请求地址出错'
            ));
            break;
    }

    /* 输出结果 */
    if (isset($this->request_params["callback"])) {
        if (preg_match("/^[\w_]+$/", $this->request_params["callback"])) {
            echo htmlspecialchars($this->request_params["callback"]) . '(' . $result . ')';
        } else {
            echo json_encode(array(
                'state' => 'callback参数不合法'
            ));
        }
    } else {
        echo $result;
    }
}

UeditorServer.php(看附件)


UeditorServer.zip


评论/留言