Variable Troubleshooting Code

From: Date: Sat, 07 Jan 2012 18:00:04 +0000
Subject: Variable Troubleshooting Code
Groups: php.general 
Request: Send a blank email to php-general+get-316211@lists.php.net to get a copy of this message
Hello!, I work in another language mostly and often develop while displaying variables (post,get,and defined) and their values at the bottom of the page or in specific places. So, I thought I'd forward my PHP version as an effort of good Karma to the list perhaps! ;-) Below is 2 simple functions that are helpful for troubleshooting while developing. Just place this code into a .php file and require it at the top of any PHP page. Then, at the bottom of the page, or in a specific (more pertinent) location, call the functions with something like this: ------------ <?PHP //troubleshooting code print '<br /><b>Testing:</b><p>'; print htmlentities(list_formvars()); print htmlentities(list_vars(get_defined_vars())); print '</p>'; ?> ------------- Optionally, you can call only specific naming conventions of your variables (if you use them).. ie: print htmlentities(list_vars(get_defined_vars(),'t_')); The above will display all defined vars such as: t_name=<value> t_city=<value> t_address=<value> etc.. Code: ----------------------------------- /* FUNCTION NAME: list_formvars INPUT: optional <begins with> var OUTPUT: <Name> = <Value> <br />
         <Name> = <Value> <br />
USE: For troubleshooting code Example Use:
      list_formvars();
      list_formvars('f_a');
*/function list_formvars($pmatch = null) { print "<br /><b>'get' Vars:</b><br />"; foreach ($_GET as $key => $value) {
            if (isset($pmatch)) {
               if (substr($key,0,strlen($pmatch)) == $pmatch) {
                  print "$key = $value<br />";
               }
            } else {
               print "$key = $value<br />";
            }
         }
print "<br /><b>'post' Vars:</b><br />"; foreach ($_POST as $key => $value) {
            if (isset($pmatch)) {
               if (substr($key,0,strlen($pmatch)) == $pmatch) {
                  print "$key = $value<br />";
               }
            } else {
               print "$key = $value<br />";
            }
         }
}/* FUNCTION NAME: list_vars INPUT: get_defined_vars(),<begins with> match OUTPUT: <Name> = <Value> <br />
         <Name> = <Value> <br />
USE: For troubleshooting code Example Use:
      list_vars(get_defined_vars());
      list_vars(get_defined_vars(),'t_');
*/function list_vars($a_vars,$pmatch = null) {
      print "<br /><b>'defined' Vars:</b><br />";
         foreach ($a_vars as $key => $value) {
            if (isset($pmatch)) {
               if (substr($key,0,strlen($pmatch)) == $pmatch) {
                  print "$key = $value<br />";
               }
            } else {
               print "$key = $value<br />";
            }
         }
} ------------------------------------------------ Cheers, Donovan P.S. Always open to good criticism if you peeps see something that can be written better.. this is about my 3rd PHP project only... so, still heavily learning ;-) -- D Brooke

« previous php.general (#316211) next »