The PhpHighlightPlugin pretty-prints PHP code using the
php-function:highlight-string.
Usage
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 ?>
Description
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.
Options
- Automatic Wrapping
If you don't want the plugin to automatically wrap the source code in <?php and ?>, then set wrap to . The default value is 1 which means that the plugin takes care of adding and removing <?php and ?> automatically.
If you set wrap to , 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 code.
- 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
Examples
PHP with default colors from php.ini:
function hello() {
echo "Hello World<p>";
}
HTML with embedded PHP
Here we have to use wrap=0 to prevent automatic wrapping, and escape '=?>=' as '=? >=':
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo "<p>Hello World</p>\n"; ?>
</body>
</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.
#include <stdio.h>
/* Get load */
int
getload(void)
{
if ((fp = fopen("/proc/loadavg", "r")) == NULL) {
syslog(LOG_ERR, _("%s %s: unable to open %s: %s"), _("FATAL ERROR:"),
"getload()", "/proc/loadavg", strerror(errno));
exit(EX_OSFILE);
}
fclose(fp);
}
Authors
Martin Geisler
gimpster@gimpster.com and Carsten Klapp
carstenklapp@users.sourceforge.net.
Bristol Wireless Community Co-operative Ltd. Registered under the Industrial and Provident Societies Act and with the FSA. Registration Number 29638R
Donate via Paypal
Donations allow us to connect those within our communities who find themselves excluded from the communications revolution










