fastadmin把富文本内容转为数组

使用php自带的DOMDocument来进行数据处理

在Common公共方法中添加代码

if (!function_exists('getTextToArray')) {
    /**
     * 把富文本转为数组获取关键词
     * @param $text
     */
    function getTextToArray($text)
    {
        if (empty($text)) {
            return [];
        }

        $dom = new DOMDocument();
        libxml_use_internal_errors(true); // 禁用错误报告
        $dom->loadHTML($text, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
        libxml_clear_errors(); // 清除错误

        $nodes = $dom->getElementsByTagName('*');
        $nodeArray = [];

        foreach ($nodes as $node) {
            $content = $node->nodeValue;
            $tagName = $node->tagName;
            $attributes = [];

            // 获取所有属性
            foreach ($node->attributes as $attribute) {
                $attributes[$attribute->name] = $attribute->value;
            }

            $nodeArray[] = [
                'tag' => $tagName,
                'content' => $content,
                'attributes' => $attributes
            ];
        }
        return $nodeArray;
    }
}

在控制器直接调用

根据项目获取对应tap==p的content的值

### FastAdmin 中配置和使用富文本编辑器 #### 一、集成百度 UEditor 富文本编辑器 为了在 FastAdmin 前端页面中启用百度 UEditor 编辑器,需按照如下指南操作: - **安装准备** 确保项目已引入必要的依赖库。通常情况下,在 FastAdmin 的模板文件夹内找到对应的 HTML 文件并加入 UEditor 所必需的 JavaScript 和 CSS 资源链接。 - **配置 `ueditor.config.js`** 针对特定需求定制化设置项,比如更改上传接口 URL 至 `/api/upload/index` 来适配后台服务端逻辑[^3]。 ```javascript // 修改 ueditor.config.js 第33行 serverUrl: "/api/upload/index" ``` 此改动允许前端通过指定 API 地址向服务器发送文件请求,从而完成资源(如图片)上载流程。 - **扩展功能——实现图片上传** 为了让用户能够在编写文章时顺利插入本地选取的照片素材,还需额外定义用于处理图像数据的方法。这一步骤涉及到了 AJAX 请求以及回调函数的应用场景[^4]。 ```javascript onImageUpload: function (files) { var that = this; for (var i = 0; i < files.length; i++) { Upload.api.send(files[i], function (data) { var url = Fast.api.cdnurl(data.url, true); $(that).summernote("insertImage", url, 'filename'); }); } } ``` 上述代码片段展示了如何监听 summernote 插件触发的图片上传事件,并利用异步调用来获取远程存储后的访问链接,最终将其嵌入至正文区域显示给作者查看。 --- #### 二、其他类型的富文本编辑器选项 除了官方推荐使用的百度 UEditor 外,还有多种第三方件可供选择,例如 Summernote 这款基于 Bootstrap 架构设计而成的产品同样适用于 FastAdmin 平台之上。 对于希望简化开发工作量或是追求更简洁界面风格的朋友来说,Summernote 提供了一套更为直观易懂的操作方式;与此同时,它也支持自定义样式表单来满足个性化展示效果的要求。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值