diff options
Diffstat (limited to 'wp-inst/wp-content/smarty-plugins/modifier.debug_print_var.php')
-rw-r--r-- | wp-inst/wp-content/smarty-plugins/modifier.debug_print_var.php | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/wp-inst/wp-content/smarty-plugins/modifier.debug_print_var.php b/wp-inst/wp-content/smarty-plugins/modifier.debug_print_var.php new file mode 100644 index 0000000..b9bb184 --- /dev/null +++ b/wp-inst/wp-content/smarty-plugins/modifier.debug_print_var.php @@ -0,0 +1,56 @@ +<?php +/** + * Smarty plugin + * @package Smarty + * @subpackage plugins + */ + + +/** + * Smarty debug_print_var modifier plugin + * + * Type: modifier<br> + * Name: debug_print_var<br> + * Purpose: formats variable contents for display in the console + * @link http://smarty.php.net/manual/en/language.modifier.debug.print.var.php + * debug_print_var (Smarty online manual) + * @param array|object + * @param integer + * @param integer + * @return string + */ +function smarty_modifier_debug_print_var($var, $depth = 0, $length = 40) +{ + $_replace = array("\n"=>'<i>\n</i>', "\r"=>'<i>\r</i>', "\t"=>'<i>\t</i>'); + if (is_array($var)) { + $results = "<b>Array (".count($var).")</b>"; + foreach ($var as $curr_key => $curr_val) { + $return = smarty_modifier_debug_print_var($curr_val, $depth+1, $length); + $results .= "<br>".str_repeat(' ', $depth*2)."<b>".strtr($curr_key, $_replace)."</b> => $return"; + } + } else if (is_object($var)) { + $object_vars = get_object_vars($var); + $results = "<b>".get_class($var)." Object (".count($object_vars).")</b>"; + foreach ($object_vars as $curr_key => $curr_val) { + $return = smarty_modifier_debug_print_var($curr_val, $depth+1, $length); + $results .= "<br>".str_repeat(' ', $depth*2)."<b>$curr_key</b> => $return"; + } + } else if (is_resource($var)) { + $results = '<i>'.(string)$var.'</i>'; + } else if (empty($var) && $var != "0") { + $results = '<i>empty</i>'; + } else { + if (strlen($var) > $length ) { + $results = substr($var, 0, $length-3).'...'; + } else { + $results = $var; + } + $results = htmlspecialchars($results); + $results = strtr($results, $_replace); + } + return $results; +} + +/* vim: set expandtab: */ + +?> |