我正在从数据库中获取内容:
$data="some markup <pre> <code> some code </code> </pre> some markup"
我想要做的是
如果$data内部有<pre> <code> </code> </pre>,那么执行一些操作并通过htmlspecialchars()函数传递some code。然后像以前一样合并。类似于:
$data="some markup <pre> <code> htmlspecialchars(some code) </code> </pre> some markup"
我不知道怎么做..
发布于 2012-08-14 03:31:22
我认为您可能希望使用DOM解析HTML语言,然后查找<pre>和<code>标记之间有代码的所有实例。
然后,您可以获取该文本并对其执行str_replace()。
发布于 2012-08-14 03:29:37
进来的时候给它消毒。那么你只有一次机会搞砸你的网站,而不是在你使用数据的任何地方都必须把它弄对。
发布于 2012-08-14 03:30:42
$data = 'one<pre><code>two</code></pre>three';
$code = preg_match('~^(.*)<pre><code>(.*)</code></pre>(.*)$~', $data, $matches);
var_dump($matches);https://stackoverflow.com/questions/11940959
复制相似问题