由百度出品的Ueditor在线编辑器是一款非常优秀的开源编辑器,我看到很多程序都集成了ueditor,在上一次博客程序中是自己使用CodeIgniter框架开发的,后台增加文章的页面就是使用的ueditor,不过一直有一个遗憾,就是没有将Ueditor的后端代码进行重构,所以在使用ueditor上传文件等操作是的后端代码实际上是与博客程序不是一路的,是分开的。
那么,这一次在改用MixPHP框架之后,也用到了ueditor,同时也下决心来把后端代码重新编写一下,这样代码就可以使用到MixPHP框架优秀的性能以及安全性。

代码进行了开源,代码库地址在:https://gitee.com/luoam/MixPHP_Ueditor
使用的MixPHP框架是1.1.1版本,跟之前的1.1.0版本稍微有一些不同。
因此在查看这个ueditor后端代码实现时,一定要记住MixPHP的版本是1.1.1

MixPHP可以自定义对象,通过配置数组即可在应用配置内的 libraries 字段内注册。
因此,首先我们在apps/httpd/libraries目录下新建一个类,并集成了BaseObject基类,完整代码可以在gitee中查看,链接是:

https://gitee.com/luoam/MixPHP_Ueditor/blob/master/apps/httpd/libraries/Ueditor.php

然后在http_permanent.php文件中配置类库:

'libraries' => [

    'Ueditor' => [
        // 类路径
        'class' => 'apps\httpd\libraries\Ueditor',
        // 属性
        'url'  => '',
    ],

],

到这里,我们可以在控制器中实例化一个Ueditor的对象,新建一个控制器UeditorController.php,增加一个IndexAction,代码如下:

public function actionIndex()
{
    app()->response->format = \mix\http\Response::FORMAT_JSON;
    $Ueditor = \apps\httpd\libraries\Ueditor::newInstanceByConfig('libraries.[Ueditor]');
    return $Ueditor->output_data();
}

比如我们用来测试的域名是:http://ueditor.anmanchina.com.cn
那么可以通过http://ueditor.anmanchina.com.cn/ueditor/index?action=config 这样的方式来请求动作。

最终测试的结果是成功的,这样实现了在MixPHP框架下的Ueditor后端代码的编写,并且很自然的与自己的项目进行集成。

标签: PHP, mixphp

已有 2 条评论

  1. 之前的站点全部抛弃了?

    1. 做了那么多网站,但是缺少维护,逐渐的都删除了

添加新评论