0

我最近一直在重写我的网站并添加了语法荧光笔,以便我可以发布代码片段。以前,我所做htmlentities()的只是字符串,以便它安全且不会破坏任何内容,但现在我必须使用 a<pre>来突出显示代码,htmlentites()从而有效地从页面中删除语法突出显示。我一直在尝试想出一个功能,它只htmlentites()会对两个标签 ( <entitiesparse> </entitiesparse>) 之间的任何内容执行一个,但似乎没有任何效果。有谁知道我可以使用的功能:

a) 将其设置为htmlentities()除特定标签之外的所有内容(如strip_tags()

或者

b) 只有htmlentities()特定标签中的东西(如上所述)

4

1 回答 1

0

您只需要申请htmlentities()原始内容。所以你可以应用htmlentities()到原始内容(文章文本),然后调用一个函数来添加语法高亮。只要您检查您的语法高亮代码不会引入意外的麻烦,您就不需要htmlentities()再次调用。

如果您说使用a元素来突出显示代码,我强烈建议您改用code元素,它旨在为编程代码的行或块提供标记。该a元素只能用作超链接的锚点。

例如,您可以使用

<code class="highlighted-code">/* line of code here /*</code>

然后,您可以使用级联样式表为code类等于“highlighted-code”的任何类型的元素提供背景颜色,例如:

code.highlighted-code {background-color: yellow}
于 2012-07-29T20:50:46.740 回答