0

次のようなhtml出力が得られます。

<div class="test-code">    
   <pre>
       <code>
          <?php echo "hello world"; ?>
       </code>
    </pre>
</div>

上記の構文を何も変更せずに、上記の HTML で基本的な PHP 構文ハイライターを使用することは可能ですか? 私は検索してきましたが、シンタックス ハイライターのほとんどはかなり高度なようで、pre(eg. pre class="php") でコード クラスを定義する必要があります。

編集: Javascript/jQuery ベースの構文ハイライトを探しています。これ<code>は、内部のコードが PHP コードであると自動的に想定して強調表示します。

4

2 に答える 2

2

ありますhighlight_string()が、実際にはPHPコードのみを強調表示し、他のすべてを<code>タグでラップします

<?php

$markup = <<<MARKUP
<div class="test-code">    
   <pre>
       <code>
          <?php echo "hello world"; ?>
       </code>
    </pre>
</div>
MARKUP;

highlight_string($markup);

出力: http://codepad.org/qnLGqP7N

私の知る限り、あなたが言及した方法はjavascriptハイライターで使用されています。

于 2012-07-24T19:08:47.883 に答える
1

私は確かにprettifyをお勧めします。

通常、コード ブロックに記述されている言語を自動検出します。

一般的な使用方法は次のとおりです。

<pre class="prettyprint">
  <code>
// your code here
  </code>
</pre>

注: Prettify は文字通りタブを取ります。ブロック内でコードにタブを付けずに、スペースを使用してください。

于 2012-07-24T19:12:43.763 に答える