我如何在 PHP 中实现类似 StackOverflow 的 Markdown?
How would I implement a StackOverflow-like Markdown in PHP?
我在寻找什么?
我正在寻找一种与 Whosebug 上使用的语言类似的降价语言。
可能的解决方案
我可以去写我自己的标记语言,但我认为这会浪费时间。不过这是有可能的。
我真正想知道的是 Whosebug markdown 语言是否是开源的,或者是否有类似的开源包可用于 PHP。
降价实施
您应该寻找可以插入和使用的现有库。
首先你需要在两大组降价实现之间做出决定
- 基本
- 扩展(表格等)
Stackexchange 使用我所说的基本或原始降价。
您应该探索的一些搜索词:
- 基本
- 约翰·格鲁伯降价
- CommonMark
- PHP 降价
- 扩展
- Fletcher Penney MultiMarkdown
- PHP 额外降价
- PHP MultiMarkdown
- PHP 解析
我使用 PHP Parsedown。我发现它有效但有点古怪和不宽容。
您应该注意到 Markdown 定义非常分散,除了 CommonMark 之外,原始实现和其他实现使用的标记定义不明确,因此不同的实现通常会产生不同的结果并支持不同的功能。
安全
存在一些安全问题。最终用户可访问的 Markdown 允许他们插入任意 HTML,这可能会引入跨站点脚本和其他安全问题。您可能需要预处理标记或 post 处理 HTML 以删除有问题的元素。由于这个原因,Stackexchange 只允许 HTML 的有限子集。
我在寻找什么?
我正在寻找一种与 Whosebug 上使用的语言类似的降价语言。
可能的解决方案
我可以去写我自己的标记语言,但我认为这会浪费时间。不过这是有可能的。
我真正想知道的是 Whosebug markdown 语言是否是开源的,或者是否有类似的开源包可用于 PHP。
降价实施
您应该寻找可以插入和使用的现有库。
首先你需要在两大组降价实现之间做出决定
- 基本
- 扩展(表格等)
Stackexchange 使用我所说的基本或原始降价。
您应该探索的一些搜索词:
- 基本
- 约翰·格鲁伯降价
- CommonMark
- PHP 降价
- 扩展
- Fletcher Penney MultiMarkdown
- PHP 额外降价
- PHP MultiMarkdown
- PHP 解析
我使用 PHP Parsedown。我发现它有效但有点古怪和不宽容。
您应该注意到 Markdown 定义非常分散,除了 CommonMark 之外,原始实现和其他实现使用的标记定义不明确,因此不同的实现通常会产生不同的结果并支持不同的功能。
安全
存在一些安全问题。最终用户可访问的 Markdown 允许他们插入任意 HTML,这可能会引入跨站点脚本和其他安全问题。您可能需要预处理标记或 post 处理 HTML 以删除有问题的元素。由于这个原因,Stackexchange 只允许 HTML 的有限子集。