highlight_file

Syntax highlighting of a file (PHP 4 )
mixed highlight_file ( string filename [, bool return] )

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.

Note:

The return parameter became available in PHP 4.2.0. Before this time it behaved like the default, which is FALSE

Caution:

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.

Note:

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:

Example 571. Creating a source highlighting URL

<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.php

See also highlight_string().

This HTML Help has been published using the chm2web software.