0

我已经玩了几个小时了,并且很好奇其他人对解决这个问题的最佳方法的看法。

我正在制作各种 CMS,我希望能够发布代码片段。

我希望能够用解释性文本段落围绕所述片段。

我想要的是:

  • 要格式化为段落的解释性文本,即 str_replace /nfor </p><p>
  • 标记中包含的任何内容都[CODE][/CODE]不会被格式化,并且已经htmlspecialchars()应用​​于它以便不执行任何代码。

我可以通过使用匹配文本的 preg_replace_callback 并在回调函数中应用 htmlspecialchars 来实现后一点。

我想对于前一点,我可以简单地做逆表达式,但这似乎是错误的做法。

有人可以建议吗?

编辑

示例代码:到目前为止我所拥有的..

function format_it($matches)
{
return "<pre class='prettyprint'>" . htmlspecialchars($matches['1']) . "</pre>";
}



$content=preg_replace_callback('#\[code\](.*)\[/code\]#isU', "format_it", $content);
4

0 回答 0