如何使用markdown(PHP和JS)禁止所有HTML?

时间:2010-06-10 23:17:39

标签: php javascript html markdown

我正在使用PHP降价库:http://michelf.com/projects/php-markdown/和Javascript降价库:http://attacklab.net/showdown/

我想禁止所有HTML,两个版本的markdown似乎都不加区别地允许它。我的第一次尝试只是在进入降价之前逃脱所有html实体。但是,这也会逃避<hyperlink><email>语法,这非常有用。

我想要转义所有HTML(不删除),但保留所有降价语法。

1 个答案:

答案 0 :(得分:3)

您有两种选择。

首先,您实际上可以关心用户提交的HTML并对其执行某些操作。试试Cal Henderson(Flickr成名)的lib_filter,或者像HTMLPurifier那样更重量级的人。

其次,如果您真的只想中和所有HTML但保留特殊语法,请使用htmlspecialchars然后撤消转换以获取您正在寻找的正则字符串。那可能是多毛了。 ;)

是的,这些都是PHP实现,而不是Javascript。当用户停止键入片刻时,ajax调用特殊用途的预览生成脚本应该足够快。或者按下按钮。