一:函数简介
我们在调试PHP的时候,常常用var_dump,echo,print_r来进行调试,但是这些函数常常只显示一行,只有查看源代码的时候,才能比较直观的显示。现在我们提供一调试的函数 dump,这款函数可以非常方便的进行调试。它的名字为Dump。
演示地址: http://www.ijquery.cn/phpfunction/Dump/demo1.php
下载地址: http://www.ijquery.cn/phpfunction/Dump/Dump.zip
二:函数应用
1、直接使用
$a = array (1, 2, array ("a", "b", "c")); var_dump ($a);
返回的结果是:
2、带参数使用
$a = array (1, 2, array ("a", "b", "c")); Dump($a,TRUE,"测试",FALSE);
返回的结果是:
三:函数源代码
/** * 浏览器友好的变量输出,便于调试时候使用 * * @param mixed $var 要输出查看的内容 * @param bool $echo 是否直接输出 * @param string $label 加上说明标签,如果有,这显示"标签名:"这种形式 * @param bool $strict 是否严格过滤 * @return string */ if ( ! function_exists('Dump')) { 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; } }