富文本编辑器是网站常用的一种工具,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(看附件)