/** * Dumps a variable in terms of a string. * This method achieves the similar functionality as var_dump and print_r * but is more robust when handling complex objects such as Yii controllers. * @param mixed $var variable to be dumped * @param integer $depth maximum depth that the dumper should go into the variable. Defaults to 10. * @param boolean $highlight whether the result should be syntax-highlighted * @return string the string representation of the variable */ public static function dumpAsString($var, $depth = 10, $highlight = false) { self::$_output = ''; self::$_objects = array(); self::$_depth = $depth; self::dumpInternal($var, 0); if ($highlight) { $result = highlight_string("<?php\n" . self::$_output, true); self::$_output = preg_replace('/<\\?php<br \\/>/', '', $result, 1); } return self::$_output; }
/** * Dumps a variable in terms of a string. * This method achieves the similar functionality as var_dump and print_r * but is more robust when handling complex objects such as Yii controllers. * @param mixed $var variable to be dumped * @param integer $depth maximum depth that the dumper should go into the variable. Defaults to 10. * @param boolean $highlight whether the result should be syntax-highlighted * @return string the string representation of the variable */ public static function dumpAsString($var, $depth = 10, $highlight = false) { self::$_output = ''; self::$_objects = array(); self::$_depth = $depth; self::dumpInternal($var, 0); if ($highlight) { $result = highlight_string("<?php\n" . self::$_output, true); $pattern = array('/<\\?php<br \\/>/', '/<code>/'); $replace = array('', '<code class="debug-cvardumper">'); $result = preg_replace($pattern, $replace, $result); if ($highlight === 'css') { $pattern = array('/<\\?php<br \\/>/', '/<code>/', '/style="color: ' . ini_get('highlight.string') . '"/', '/style="color: ' . ini_get('highlight.comment') . '"/', '/style="color: ' . ini_get('highlight.keyword') . '"/', '/style="color: ' . ini_get('highlight.bg') . '"/', '/style="color: ' . ini_get('highlight.default') . '"/', '/style="color: ' . ini_get('highlight.html') . '"/'); $replace = array('', '<code class="debug-cvardumper">', 'class="string"', 'class="comment"', 'class="keyword"', 'class="bg"', 'class="default"', 'class="html"'); $result = preg_replace($pattern, $replace, $result); } self::$_output = $result; } return self::$_output; }