Tp3.2.3 整合 百度Ueditor1.4.3.3 图片上传功能

Ueditor与ThinkPHP集成
本文介绍如何在ThinkPHP框架中集成百度Ueditor富文本编辑器,并实现图片上传功能。主要内容包括解决Ueditor与ThinkPHP调试冲突的问题,以及通过ThinkPHP的upload组件实现图片上传。

 

首先现将百度Ueditor引入网页,修改要修改的配置,特别是serverUrl 如图修改成自己要调用的控制器方法。

特别强调, Ueditor  会与ThinkPHP的trace调试冲突,所以要关掉SHOW_PAGE_TRACE' =>false, 

调用ThinkPHP upload类重写上传方法

public function upload(){
       date_default_timezone_set("Asia/chongqing");
       error_reporting(E_ERROR);
       header("Content-Type: text/html; charset=utf-8");
       $CONFIG = json_decode(preg_replace("/\/\*[\s\S]+?\*\//", "", file_get_contents("./Data/Ueditor/php/config.json")), true);

      
       $action = $_GET['action'];
       
       if('uploadimage' == $action) { //上传图片
           //处理图片上传开始
           //实例化上传类
           $upload = new Upload();
           //配置
           $upload->subName = array('date', 'Ym');//子目录创建方式
           //上传
           $info = $upload->upload();
           //p($info);//上传信息
           if($info) {
               /**
                * 得到上传文件所对应的各个参数,数组结构
                * array(
                *     "state" => "",          //上传状态,上传成功时必须返回"SUCCESS"
                *     "url" => "",            //返回的地址
                *     "title" => "",          //新文件名
                *     "original" => "",       //原始文件名
                *     "type" => ""            //文件类型
                *     "size" => "",           //文件大小
                * )
                */
               $arr = array(
                   'state'=>'SUCCESS',
                   'url'=>__ROOT__ .'/Uploads/'.$info['upfile']['savepath'].$info['upfile']['savename'],
                   'title'=>$info['upfile']['savename'],
                   'original'=>$info['upfile']['name'],
                   'type'=>$info['upfile']['ext'],
                   'size'=>$info['upfile']['size']
               );


               
               /* 返回数据 */
               $result = json_encode($arr);
           } else {
               $arr = array('state'=>$upload->getError());
           }
           // print_r($arr);
           
           //图片上传结束
       } elseif('config' == $action) { //加载配置
           $result =  json_encode($CONFIG);
       }
       
       /* 输出结果 */
       if (isset($_GET["callback"])) {
           if (preg_match("/^[\w_]+$/", $_GET["callback"])) {
               echo htmlspecialchars($_GET["callback"]) . '(' . $result . ')';
           } else {
               echo json_encode(array(
                   'state'=> 'callback参数不合法'
               ));
           }
       } else {
           echo $result;
       }
    }

注意将方法中的上传路径修改成自己项目中的路径

亲测上传图片功能正常

再看看我的目录,请重新给出一个新的目录: 1.4 云测试体系 11 1.4.1 功能性测试 11 1.4.1.1 接口测试 11 1.4.1.2 UI测试 12 1.4.1.3 接口对应的功能 12 1.4.1.4 接口实现的功能逻辑 12 1.4.1.5 关键流程 12 1.4.1.6 场景测试 12 1.4.1.7 认证测试 12 1.4.1.8 对照测试 12 1.4.1.9 体验测试 13 1.4.2 性能测试 13 1.4.2.1 性能关注点 14 1.4.2.2 性能测试类型 15 1.4.2.3 性能测试应用场景 15 1.4.2.4 性能指标 17 1.4.2.5 性能模型 17 1.4.2.6 测试流程 19 1.4.2.6.1 性能需求分析 19 1.4.2.6.2 性能测试准备 22 1.4.2.6.3 性能测试执行 22 1.4.2.6.4 结果分析与调优 23 1.4.2.6.5 测试报告与总结 23 1.4.2.7 测试工具 23 1.4.2.8 场景设计 25 1.4.2.9 测试方法 25 1.4.2.9.1 负载测试 25 1.4.2.9.2 压力测试 25 1.4.2.9.3 稳定性测试 26 1.4.2.10 性能测试的风险 26 1.4.3 可靠性测试 26 1.4.3.1 测试覆盖 27 1.4.3.1.1 异常测试 27 1.4.3.1.2 容灾测试 28 1.4.3.1.3 监控预警 28 1.4.3.2 如何执行异常测试 29 1.4.3.2.1 系统架构分析 29 1.4.3.2.2 用例设计 29 1.4.3.2.3 异常模拟和测试 29 1.4.3.2.4 异常分析 29 1.4.3.2.5 异常恢复 29 1.4.4 可维护性测试 30 1.4.5 兼容性测试 30 1.4.6 安全测试 30 1.4.7 成本估算 30 1.4.8 分布式系统的测试重点 30 1.4.8.1 数据一致性 30 1.4.8.1.1 分布式存储系统中的一致性问题 31 1.4.8.1.2 微服务应用的分布式一致性问题 31 1.4.8.1.3 数据一致性的测试 32 1.4.8.2 幂等性 32 1.4.8.3 异常模拟和恢复测试 33 1.4.8.3.1 混沌工程测试实例 33 1.4.8.4 结合故障模拟的长时间稳定性测试 34 1.4.8.5 全链路压测 34
最新发布
09-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LaughingZhu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值