使用htmlentities()和nl2br()将文本数据正确显示到前台

问题:

在后台textarea里编辑了有一串字符串,虽然在textarea里编辑是有换行效果的,但是数据获取到就只是\n,前端是不认识这个的,正确输出到前台的换行只能是<br/>。

$str = "ABCD
        EFGH
        IJKLM
        NOPQ";
echo $str;

打印效果:

换行其实是被识别成\r\n。

解决:

$str = htmlentities(trim($loginWhiteList), ENT_QUOTES, "utf-8");
$str = nl2br($str);
echo $str;

htmlentities()函数把字符转换为HTML实体。我觉得更好的解释是转义HTML标签,从而得到不包含HTML格式的字符串,字符串是什么样输出就是什么样。
nl2br()它的作用是将字符串中的换行符(\n)替换成 HTML 的换行标记。

这里其实只用nl2br()就可以实现,先用htmlentities()只是防止向浏览器输出一些HTML标签。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-15 08:08:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-15 08:08:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-15 08:08:03       87 阅读
  4. Python语言-面向对象

    2024-04-15 08:08:03       96 阅读

热门阅读

  1. 浏览器从输入url到渲染的过程

    2024-04-15 08:08:03       36 阅读
  2. CentOS 设置静态 IP 配置

    2024-04-15 08:08:03       129 阅读
  3. TCP 粘包

    2024-04-15 08:08:03       127 阅读
  4. 免费GPT-3.5部署指南

    2024-04-15 08:08:03       35 阅读
  5. 安装spdlog

    2024-04-15 08:08:03       34 阅读
  6. 【Windows】如何在Windows系统上用Sudo

    2024-04-15 08:08:03       103 阅读
  7. PL/SQL与SQL的区别:从结构化查询到过程化编程

    2024-04-15 08:08:03       205 阅读
  8. TCP的三次握手

    2024-04-15 08:08:03       34 阅读
  9. 【CSS】CSS水平居中方案

    2024-04-15 08:08:03       36 阅读
  10. 【CSS】CSS元素的垂直居中案例

    2024-04-15 08:08:03       35 阅读
  11. 知识积累(六):Dokcer 容器和镜像概念问题

    2024-04-15 08:08:03       37 阅读
  12. 系统架构设计与优化的几个关键点

    2024-04-15 08:08:03       36 阅读