我想在浏览器上显示代码而不是执行它,所以我使用highlight_string,
<?php highlight_string('function foo(items) {
for (var i=0; i<items.length; i++) {
alert(items[i] + "juhu");
} // Real Tab.
}')?>返回,
<code><span style="color: #000000"> function foo(items) { <br /> for (var i=0; i<items.length; i++) { <br /> alert(items[i] + "juhu"); <br /> } // Real Tab. <br />}</span> </code>
<code>但我想要的是没有s的新,
<code><span style="color: #000000">
function foo(items) {
for (var i=0; i<items.length; i++) {
alert(items[i] + "juhu");
} // Real Tab.
}</span>
</code>有可能吗?
发布于 2011-11-21 18:12:21
您应该能够用普通的换行符(\r\n)替换每个<br />标记,并输出字符串,如下所示:
$data = highlight_string('function foo(items) {
for (var i=0; i<items.length; i++) {
alert(items[i] + "juhu");
} // Real Tab.
}',true);
$data = str_replace('<br />',"\r\n",$data);
echo '<pre>';
echo $data;
echo '</pre>';发布于 2011-11-21 18:07:04
为什么不尝试让自定义的function.Get字符串作为参数,通过‘返回’引爆字符串,在循环中的子字符串上使用highlight_string函数,然后将所有子字符串连接起来形成所需的字符串。
https://stackoverflow.com/questions/8216289
复制相似问题