PHP 输出变量结构信息到日志

来源:互联网 发布:vegas for mac 编辑:程序博客网 时间:2024/05/17 05:50


下面这个函数是对浏览器友好的一个变量输出函数,方便对复杂变量结构的查看:


/** * 浏览器友好的变量输出 * @param mixed $var 变量 * @param boolean $echo 是否输出 默认为True 如果为false 则返回输出字符串 * @param string $label 标签 默认为空 * @param boolean $strict 是否严谨 默认为true * @return void|string */function dump($var, $echo=true, $label=null, $strict=true) {    $label = ($label === null) ? '' : rtrim($label) . ' ';    if (!$strict) {        if (ini_get('html_errors')) {            $output = print_r($var, true);            $output = '<pre>' . $label . htmlspecialchars($output, ENT_QUOTES) . '</pre>';        } else {            $output = $label . print_r($var, true);        }    } else {        ob_start();        var_dump($var);        $output = ob_get_clean();        if (!extension_loaded('xdebug')) {            $output = preg_replace('/\]\=\>\n(\s+)/m', '] => ', $output);            $output = '<pre>' . $label . htmlspecialchars($output, ENT_QUOTES) . '</pre>';        }    }    if ($echo) {        echo($output);        return null;    }else        return $output;}


简单的包装上面的函数,就可以输出在文件中:


function my_dump($s){    $a = dump($s,false);    $a = str_replace("&quot"," ",$a);    $a = str_replace("&gt"," ",$a);    $a = str_replace(";"," ",$a);    return $a;}


使用的时候:


Log::write("aaa:".my_dump($a),Log::INFO);

0 0
原创粉丝点击