1 |
cvsjoko |
1.1 |
<?php |
2 |
|
|
|
3 |
|
|
/* |
4 |
|
|
* Smarty plugin |
5 |
|
|
* ------------------------------------------------------------- |
6 |
|
|
* Type: modifier |
7 |
|
|
* Name: debug_print_var |
8 |
|
|
* Purpose: formats variable contents for display in the console |
9 |
|
|
* ------------------------------------------------------------- |
10 |
|
|
*/ |
11 |
|
|
function smarty_modifier_debug_print_var($var, $depth = 0, $length = 40) |
12 |
|
|
{ |
13 |
|
|
if (is_array($var)) { |
14 |
|
|
$results = "<b>Array (".count($var).")</b>"; |
15 |
|
|
foreach ($var as $curr_key => $curr_val) { |
16 |
|
|
$return = smarty_modifier_debug_print_var($curr_val, $depth+1); |
17 |
|
|
$results .= '<br>\r'.str_repeat(' ', $depth*2)."<b>$curr_key</b> => $return"; |
18 |
|
|
} |
19 |
|
|
return $results; |
20 |
|
|
} else if (is_object($var)) { |
21 |
|
|
$object_vars = get_object_vars($var); |
22 |
|
|
$results = "<b>".get_class($var)." Object (".count($object_vars).")</b>"; |
23 |
|
|
foreach ($object_vars as $curr_key => $curr_val) { |
24 |
|
|
$return = smarty_modifier_debug_print_var($curr_val, $depth+1); |
25 |
|
|
$results .= '<br>\r'.str_repeat(' ', $depth*2)."<b>$curr_key</b> => $return"; |
26 |
|
|
} |
27 |
|
|
return $results; |
28 |
|
|
} else { |
29 |
|
|
if (empty($var) && $var != "0") { |
30 |
|
|
return '<i>empty</i>'; |
31 |
|
|
} |
32 |
|
|
if (strlen($var) > $length ) { |
33 |
|
|
$results = substr($var, 0, $length-3).'...'; |
34 |
|
|
} else { |
35 |
|
|
$results = $var; |
36 |
|
|
} |
37 |
|
|
$results = preg_replace("![\r\t\n]!", " ", $results); |
38 |
|
|
$results = htmlspecialchars(htmlspecialchars($results)); |
39 |
|
|
return $results; |
40 |
|
|
} |
41 |
|
|
} |
42 |
|
|
|
43 |
|
|
/* vim: set expandtab: */ |
44 |
|
|
|
45 |
|
|
?> |