You can initiate PHP debugging messages for the server by changing the display_errors and error_level settings in php.ini. Unfortunately, this is not the best situation in a production system. Luckily, you can enable error reporting on a page by page basis by simply adding the following lines to the top of your PHP script:
<?php
error_reporting(E_ALL);
ini_set('display_errors', True);
...
For extra credit, you can create an include file (mine is aptly labeled debugging.php) that enables error reporting, and exposes my code to a couple of really handy functions:
<?php
$DEBUGGING = True;
$TRACECOUNT = 0;
if($DEBUGGING)
{
error_reporting(E_ALL);
ini_set('display_errors', True);
)
function trace($message)
global $DEBUGGING;
global $TRACECOUNT;
if($DEBUGGING)
{
echo '<hr />'.$TRACECOUNT++.'<code>'.$message.'</code><hr />';
}
}
function tarr($arr)
{
global $DEBUGGING;
global $TRACECOUNT;
if($DEBUGGING)
{
echo '<hr />'.$TRACECOUNT++.'<code>';
print_r($arr);
echo '</code><hr />';
}
}
?>
I include this file at the top of every PHP page. The trace() and tarr() functions allow me to easily format my own debugging code, and $TRACECOUNT presents a nice interface for knowing where a script failed if it halts unexpectedly. By simply toggling the $DEBUGGING variable to false, my code is ready to be tested by QA. When the product is finalize, I remove the include call to debugging.php from my source files altogether.
This post has been edited by Motoma: 09 July 2010 - 05:04 AM






MultiQuote




|