3 * takes a dir as arg, highlights all php code found in html files inside
6 * @author Gaetano Giunta
7 * @copyright (c) 2007-2009 G. Giunta
10 function highlight($file)
12 $starttag = '<pre class="programlisting">';
15 $content = file_get_contents($file);
18 while(($start = strpos($content, $starttag, $last)) !== false)
20 $end = strpos($content, $endtag, $start);
21 $code = substr($content, $start+strlen($starttag), $end-$start-strlen($starttag));
22 if ($code[strlen($code)-1] == "\n") {
23 $code = substr($code, 0, -1);
26 $code = str_replace(array('>', '<'), array('>', '<'), $code);
27 $code = highlight_string('<?php '.$code, true);
28 $code = str_replace('<span style="color: #0000BB"><?php <br />', '<span style="color: #0000BB">', $code);
30 $out = $out . substr($content, $last, $start+strlen($starttag)-$last) . $code . $endtag;
31 $last = $end+strlen($endtag);
33 $out .= substr($content, $last, strlen($content));
39 $files = scandir($dir);
40 foreach($files as $file)
42 if (substr($file, -5, 5) == '.html')
44 $out = highlight($dir.'/'.$file);
45 file_put_contents($dir.'/'.$file, $out);