【问题标题】:How Convert HTML content and Special Characters to Html entity如何将 HTML 内容和特殊字符转换为 Html 实体
【发布时间】:2021-04-26 17:52:42
【问题描述】:

我正在下载 phpOffice/phpword 文档。当我将内容传递给文档下载时,内容是这样的,

<p>& operation check</p><p> < operation check</p><p> > operation check</p>

我想更改特殊字符和内容,例如,

<p> &amp; operation check</p> <p> &lt; operation check</p> <p> &gt; operation check</p>

我已经完成了;

$textContent = strip_tags($content);
$content = htmlspecialchars($textContent);

上述问题我可以用特殊字符替换 html 实体,但我删除了 html 其他标签并传递给文档创建。然后内容样式丢失,因为只发送文本内容。

我检查了 php - 整洁。但不能正常工作。有人可以解释实现上述操作的方法吗?

【问题讨论】:

  • 解释为什么只有&gt;&lt; 中的一部分必须编码?如果文本是&lt;a&gt;&lt; a&gt;&lt;/a&gt; &lt; bold &lt; i,那么将编码什么以及为什么?
  • html 标签不需要转换,假设有人添加带有特殊字符的段落,那么只有那些特殊字符应该转换为 html 实体,这里我只给出了 3 个 &、 像这样。我想获得带有 html 实体的完整 html。这是用于创建 word 文件。

标签: php html symfony phpword phpoffice


【解决方案1】:

这真的没有意义。在 HTML 中转义字符的全部意义在于在添加标签之前完成。像这样的:

$content = "<p>" . htmlspecialchars("& operation check") . "</p><p>" . htmlspecialchars("< operation check") . "</p>";

如果您拥有的数据尚未转义,则该数据已损坏,不应使用。您需要返回一步,找出从哪里获取数据以及数据损坏的原因,并在数据损坏之前获取数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    相关资源
    最近更新 更多