富文本编辑器是网站常用的一种工具,editor是百度旗下的一款开源免费的富文本编辑器,使用也很简单,今天将editor的服务端(php版)修改为
thinkphp框架适用版,目的就是方便对文件进行操作、上传到七牛、oss等平台。
首先修改ueditor的服务器地址:
UE.getEditor('content',{
serverUrl:"/admin/upload/ueditor.html", //后端地址,这里处理所有的逻辑
});
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(看附件)