Syntax Highlighting mit PHP

Ein kleines Beispiel zu PEAR:Text_Highlighter.

<?php
/**
* Beispiel zur Verwendung von PEAR::Text/Highlighter
*/
?>
<html>
<head>
  <STYLE type="text/css">
	.hl-main {font-family: monospace; font-size:13px;}
	
	.hl-default { color: #000000; }
	.hl-code { color: #7f7f33; }
	.hl-brackets { color: #0000FF; }
	.hl-comment { color: #008000; font-style: italic; }
	.hl-quotes { color: #00007F; }
	.hl-string { color: #008080; }
	.hl-identifier { color: #000000; }
	.hl-reserved { color: #000080; }
	.hl-inlinedoc { color: #0000FF; }
	.hl-var { color: #FF0000; }
	.hl-url { color: #0066FF; }
	.hl-special { color: #0000FF; }
	.hl-number { color: #800080; }
	.hl-inlinetags { color: #000080; font-weight: bold; }
  </style>
</head>
<body>
<?php

// PEAR-Klasse Text/Highlighter einbinden
require_once('Text/Highlighter.php');

// Objekt erzeugen
// Sprache: SQL, Zeilennummer anzeigen
$hl =& Text_Highlighter::factory('SQL',array('numbers'=>true));

// Ausgeben von des Quelltextes von query.sql
echo $hl->highlight(file_get_contents('query.sql'));

?>
</body>
</html>

Ist ja einfach. PEAR:Text/Highlighter unterstützt verschiedene Sprachen, u.a: PHP, SQL, Java, C++, XML, DTD …