如何检查 PHP 中的降价编码字段?
How to check a markdown-encoded field in PHP?
是否有一些最佳实践来检查应该是 Markdown 格式文本的字段(从 HTML 表单接收)的一致性?
最重要的是,我想确保提交的文本不包含任何 HTML/script。
目前,我正在使用 PHP strip_tags()
函数实现此目的。
虽然 markdown 格式的主要思想是纯文本,但我不确定此功能是否会破坏 Markdown 格式。
(例如 <http://www.example.com>
语法呢?)
检查 Markdown 有效性确实很棘手。
这是我想出的确保存储的 Markdown 编码文本安全的唯一方法:
- 将 MarkDown 文本解析为 HTML
- 消毒HTML(例如使用HTML净化器)
- 将结果转换回 Markdown
注意:如果您只需要 markdown 的一个子集(比如 Whosebug 用于用户评论的迷你 markdown),仅涉及**粗体**、_斜体_、`code` 和[链接](http://www.example.com), 然后使用 strip_tags
就足够了(它可能会导致输出发生变化,但至少是安全的)。
是否有一些最佳实践来检查应该是 Markdown 格式文本的字段(从 HTML 表单接收)的一致性?
最重要的是,我想确保提交的文本不包含任何 HTML/script。
目前,我正在使用 PHP strip_tags()
函数实现此目的。
虽然 markdown 格式的主要思想是纯文本,但我不确定此功能是否会破坏 Markdown 格式。
(例如 <http://www.example.com>
语法呢?)
检查 Markdown 有效性确实很棘手。 这是我想出的确保存储的 Markdown 编码文本安全的唯一方法:
- 将 MarkDown 文本解析为 HTML
- 消毒HTML(例如使用HTML净化器)
- 将结果转换回 Markdown
注意:如果您只需要 markdown 的一个子集(比如 Whosebug 用于用户评论的迷你 markdown),仅涉及**粗体**、_斜体_、`code` 和[链接](http://www.example.com), 然后使用 strip_tags
就足够了(它可能会导致输出发生变化,但至少是安全的)。