<?php
//////////////////////////////////////////////////////////////
///  phpEval() by James Heinrich <info@silisoftware.com>    //
//        available at http://www.silisoftware.com         ///
//////////////////////////////////////////////////////////////
//                                                          //
//         This code is released under the GNU GPL:         //
//           http://www.gnu.org/copyleft/gpl.html           //
//                                                          //
//      +---------------------------------------------+     //
//      | If you do use this code somewhere, send me  |     //
//      | an email and tell me how/where you used it. |     //
//      +---------------------------------------------+     //
//                                                          //
//////////////////////////////////////////////////////////////
///                                                         //
define('PHP_EVAL_VERSION''1.1.2');                        //
// v1.1.2 - November 28, 2002                               //
//   * removed &gt; and &lt; translation (highlight_string  //
//     does this automatically)
//                                                          //
// v1.1.1 - September 19, 2002                              //
//   * syntax highlighting added                            //
//                                                          //
// v1.1.0 - September 17, 2002                              //
//   * now works with register_globals = off                //
//   * now requires PHP v4.1.0 or higher ($_SERVER, $_POST) //
//                                                          //
// v1.0.0 - May 10, 2002                                    //
//   * initial public release                               //
//                                                         ///
//////////////////////////////////////////////////////////////

error_reporting(E_ALL);
ini_set('display_errors''1');

echo 
'<HTML><HEAD><TITLE>phpEval() v'.PHP_EVAL_VERSION.' (www.silisoftware.com)</TITLE></HEAD><BODY>';

$StatementToEvaluate = (isset($_POST['StatementToEvaluate']) ? stripslashes($_POST['StatementToEvaluate']) : '');
if (
$StatementToEvaluate) {
    
$starttime time();
    eval(
$StatementToEvaluate);

    echo 
'<TABLE BORDER="1" WIDTH="500" CELLSPACING="0" CELLPADDING="10"><TR><TD><B><PRE>';
    
ob_start();
    
highlight_string('<?php'."\n".$StatementToEvaluate."\n".'?>');
    
$highlighted_code ob_get_contents();
    
ob_end_clean();
    
$highlighted_code str_replace('<font color="#0000BB">&lt;?php<br /></font>'''str_replace('<font color="#0000BB">?&gt;</font>'''$highlighted_code));
    echo 
$highlighted_code;
    echo 
'</PRE></B></TD></TR></TABLE>';
    echo 
'Evaluated in '.number_format(time() - $starttime).' seconds';
} else {
    echo 
'Type in a PHP statement that you want evaluated.<BR>Something like <PRE>echo date(\'F j, Y g:ia\');</PRE><BR>';
}
echo 
'<FORM ACTION="'.$_SERVER['PHP_SELF'].'" METHOD="POST">';
echo 
'<TEXTAREA NAME="StatementToEvaluate" COLS="120" ROWS="30" WRAP="OFF">'.htmlspecialchars($StatementToEvaluate).'</TEXTAREA>';
echo 
'<BR><INPUT TYPE="SUBMIT" VALUE="Run"></FORM>';
echo 
'</BODY></HTML>';

?>