> YII 类库手册 > CVarDumper
system.utils
继承 class CVarDumper
源自 1.0
版本 $Id: CVarDumper.PHP 2799 2011-01-01 19:31:13Z qiang.xue $
源码
CVarDumper旨在替换简陋的PHP函数var_dump和print_r。 它可以在复杂的对象结构中正确地识别递归对象。 它同时具备递归深度控制,以避免一些古怪的变量导致地 无限递归显示的问题。

CVarDumper可以象下面这样使用:
CVarDumper::dump($var);

公共方法

方法 描述 定义在
dump() 显示一个变量。 CVarDumper
dumpAsString() 将一个变量显示的结果存储在字符串中返回。 CVarDumper

方法详细

dump() 方法
public static void dump(mixed $var, integer $depth=10, boolean $highlight=false)
$var mixed 需要显示的变量
$depth integer 解析器处理一个变量的最大深度。默认值是10。
$highlight boolean 结果是否进行高亮格式化
public static function dump($var,$depth=10,$highlight=false)
{
    echo 
self::dumpAsString($var,$depth,$highlight);
}

显示一个变量。 此方法完成的功能与var_dump和print_r类似, 但是它在处理类似于Yii控制器这样的复杂对象时更加的健壮可靠。

dumpAsString() 方法
public static string dumpAsString(mixed $var, integer $depth=10, boolean $highlight=false)
$var mixed 需要显示的变量
$depth integer 解析器处理一个变量的最大深度。默认值是10。
$highlight boolean 结果是否进行高亮格式化
{return} string 存储了变量的显示结果的字符串
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('/&lt;\\?php<br \\/>/','',$result,1);
    }
    return 
self::$_output;
}

将一个变量显示的结果存储在字符串中返回。 此方法完成的功能与var_dump和print_r类似, 但是它在处理类似于Yii控制器这样的复杂对象时更加的健壮可靠。

上一篇: