The highlight_file() function prints out a syntax higlighted version of the code contained in filename using the colors defined in the built-in syntax highlighter for PHP.
If the second parameter return is set to TRUE then highlight_file() will return the highlighted code as a string instead of printing it out. If the second parameter is not set to TRUE then highlight_file() will return TRUE on success, FALSE on failure.
The return parameter became available in PHP 4.2.0. Before this time it behaved like the default, which is FALSE
Care should be taken when using the show_source() and highlight_file() functions to make sure that you do not inadvertently reveal sensitive information such as passwords or any other type of information that might create a potential security risk.
Since PHP 4.2.1 this function is also affected by safe_mode and open_basedir.
To setup a URL that can code hightlight any script that you pass to it, we will make use of the "ForceType" directive in Apache to generate a nice URL pattern, and use the function highlight_file() to show a nice looking code list.
In your httpd.conf you can add the following:
<Location /source>
ForceType application/x-httpd-php
</Location>And then make a file named "source" and put it in your web root directory.
<html>
<head>
<title>Source Display</title>
</head>
<body bgcolor="white">
<?php
$script = getenv("PATH_TRANSLATED");
if (!$script) {
echo "<br /><b>ERROR: Script Name needed</b><br />";
} else {
if (ereg("(\.php|\.inc)$",$script)) {
echo "<h1>Source of: $PATH_INFO</h1>\n<hr />\n";
highlight_file($script);
} else {
echo "<h1>ERROR: Only PHP or include script names are allowed</h1>";
}
}
echo "<hr />Processed: ". date("Y/M/d H:i:s", time());
?>
</BODY>
</HTML>Then you can use an URL like the one below to display a colorized version of a script located in "/path/to/script.php" in your web site.
http://your.server.com/source/path/to/script.phpSee also highlight_string().
| This HTML Help has been published using the chm2web software. |