【问题标题】:Displaying HTML in a textarea once it has been formatted格式化后在文本区域中显示 HTML
【发布时间】:2011-03-29 08:36:21
【问题描述】:

我使用脚本将换行符转换为使用 PHP 的 textarea 中的 <li> 标签,我现在希望能够输出未格式化的存储内容(在 <li> 中)标签。所以它看起来就像你最初写的一样。

我将该行回显到 textarea 中,但它自然也会输出 HTML。

有谁知道剥离标签并用最初定义的换行符替换它们的函数或方法?

提前谢谢你。

回答: 将文本存储到数据库之前不要格式化,保持其原始形式(但要检查不可靠的字符等)并在显示时将其转换为 HTML。

【问题讨论】:

    标签: php html function textarea


    【解决方案1】:

    不要那样做。
    在存储数据之前不要将换行符转换为标签,而是在将其打印到 HTML 页面之前将其转换。
    这是做这些事情的通常方式。

    【讨论】:

    • 嗨,我认为预先上传会更有效,因为数据会在多个不同的页面上输出。会尝试你的建议。
    • S 先生是正确的。不过,在存储之前从输入中过滤掉任何讨厌的东西会很有用。
    • 对于更流行/资源繁重的应用程序来说,通常是存储两个版本:未更改并准备好查看(当然,在更改“源”之一时更新 html/ready 版本)。无论是在数据库中还是在另一个缓存中,但是一遍又一遍地转换有些静态的数据当然是一种浪费。
    • @Wrikken 用纯 HTML 编写您的所有网站。否则就是浪费
    • 确实,这叫通过CDN推送静态内容,欢迎来到现实世界我可爱的rustbucket :)
    【解决方案2】:

    nl2br()是将换行符转换为<br>'s的ootb方法

    http://php.net/manual/en/function.nl2br.php

    【讨论】:

    • 您好,我的目标是将 li 标签转换为换行符,我不确定 nlb2r() 是否可以做到这一点?
    • 你好。您说“我使用脚本将换行符转换为
    • 标签” - 不完全确定您为什么不将它们转换为
      s(在语义上更正确)
  • 用于输出目的 - 输入的文本显示在列表中(这是一种烹饪方法),
  • 猜你喜欢
    相关资源
    最近更新 更多
    热门标签