De GhostWiki
Saltar a: navegación, buscar

The PhpHighlightPlugin pretty-prints PHP code using the php-function:highlight-string.


You specify options for the plugin on the same line as the <?plugin, and put the code on the following lines, until the final ?>:

<?plugin PhpHighlight wrap? color options code to be highlighted ?>


Depending on the wrap option, then the plugin will take care of adding <?php and ?> to the code before passing it to php-function:highlight-string. If the PHP delimiters were added, then the plugin removes them again from the highlighted string, before presenting it.


Automatic Wrapping:

 If you don't want the plugin to automatically wrap the source code
 in <?php and ?>, then set wrap to 0. The default value is 1
 which means that the plugin takes care of adding and removing
 <?php and ?> automatically.
 If you set wrap to 0, then you'll be able to mix PHP code with
 HTML. The plugin will then translate '< ?php' into '<?php' and
 '? >' into '?>' to allow you to start and stop PHP mode in your

Color Options:

 The plugin accepts optional color arguments which correspond to the
 highlight settings in php.ini. Specified colors must be a valid
 hexadecimal color or
 HTML 4 color name
 in lowercase, such as '#0f0344' or blue. You can set the
 following options:
 string, comment, keyword, bg, default, and html


PHP with default colors from php.ini:

<?plugin PhpHighlight function hello() {

echo "Hello World

"; } ?>

HTML with embedded PHP

Here we have to use wrap0= to prevent automatic wrapping, and escape '?>' as '? >':

<?plugin PhpHighlight wrap0 html'#000000' bg='#dddddd' <html>

   <title>PHP Test</title>
< ?php echo "<p>Hello World

"; ? >


</html> ?>

C Source

Although highlight_string() was designed with PHP code in mind it is suitable for basic syntax-highlighting of most C code because the two syntax are similar.

<?plugin PhpHighlight defaultblack stringblue commentgray keywordpurple

  1. include <stdio.h>

/ Get load / int getload(void) {

   if ((fp  fopen("/proc/loadavg", "r")) = NULL) {
       syslog(LOGERR, ("%s %s: unable to open %s: %s"), _("FATAL ERROR:"),
             "getload()", "/proc/loadavg", strerror(errno));

} ?>


Martin Geisler and Carsten Klapp