php中的语法高亮显示错误意外'代码'(T_STRING)

时间:2013-05-08 07:36:43

标签: php syntax-highlighting

我正在创建一个在线源代码判断。我需要在页面中显示用户代码并使用正确的语法高亮显示。

我正在使用语法荧光笔https://code.google.com/p/syntaxhighlighter/

我已经在我的项目中复制了必要的文件。当我尝试将其与我的代码集成时,我得到以下错误:

代码片段:

     $result = mysql_query($query); // query to fetch the code
        $row = mysql_fetch_array($result);
        $str = str_replace("<", "&lt;", $row['soln']); //$row['soln] has the code
        echo("<strong>".$row['filename']."</strong><br/><br/>\n<pre name="code" class="c">".str_replace(">", "&gt;", $str)."</pre>");
    }


?>
<link type="text/css" rel="stylesheet" href="highlight/css/SyntaxHighlighter.css"></link>
<script language="javascript" src="highlight/js/shCore.js"></script>
<script language="javascript" src="highlight/js/shBrushCSharp.js"></script>
<script language="javascript" src="highlight/js/shBrushXml.js"></script>
<script language="javascript">
dp.SyntaxHighlighter.ClipboardSwf = 'highlight/flash/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');
</script>

错误:

  

解析错误:语法错误,意外“代码”(T_STRING)   第28行/opt/lampp/htdocs/project1/admin/preview.php

我哪里错了?谢谢你的帮助

2 个答案:

答案 0 :(得分:2)

echo("<strong>".$row['filename']."</strong><br/><br/>\n<pre name=\"code\" class=\"c\">".str_replace(">", "&gt;", $str)."</pre>");

用上面的代替你的回声,你没有逃过一些双引号。

答案 1 :(得分:1)

echo('<strong>'.$row['filename'].'</strong><br/><br/>\n<pre name="code" class="c">'.str_replace(">", "&gt;", $str).'</pre>');

或者你也可以尝试这个.. 无需逃避双引号。