You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Tiny Editor插入内容前端出现随机rn字符该如何解决?

异常字符“rn”显示问题解决方案

你遇到的rn字符本质是Windows平台标准换行符\r\n在转义处理异常时,转义符\丢失后残留的明文内容,该问题和数据库字符集、字段类型无关,可按以下步骤排查解决:

1. 后端PHP层处理(最推荐)

在你把商品数据存入$categories数组前,单独处理description字段,直接把换行符转换为HTML可识别的换行标签,同时避免转义异常:

// 放到while ($item = mysqli_fetch_assoc($result))循环内,处理完其他字段后添加
// 方案1:直接替换所有换行符为<br>标签
$item['description'] = str_replace(["\r\n", "\r", "\n"], '<br>', $item['description']);

// 方案2:如果需要同时转义其他HTML特殊字符防止XSS风险,用nl2br结合htmlspecialchars
$item['description'] = nl2br(htmlspecialchars($item['description']));

同时排查你的PHP代码中是否对商品描述字段调用了stripslashes()之类的移除转义符的函数,这类函数会把\r\n的反斜杠移除,直接生成rn字符。

2. 前端Vue层处理

如果不方便修改后端代码,可在前端渲染前处理字段内容:

// 拿到后端返回的商品数据后,遍历处理每个item的description
item.description = item.description.replace(/\r\n|\r|\n|rn/g, '<br>')

3. Tiny Editor配置优化

调整编辑器初始化参数,让编辑器在保存时就直接把换行转换为HTML标签,避免纯换行符存入数据库:

tinymce.init({
  // 其他原有配置保留,新增以下参数
  forced_root_block: 'p',
  remove_linebreaks: false,
  convert_newlines_to_brs: true
})

内容的提问来源于stack exchange,提问作者Team Thunder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 21:27:00