##
## [changes]
## - 2003.07.11 : check is_array()
## - 2003.03.07 : new build
##
## [references]
##
## [usage]
##
## [example]
##
## do not set to $GLOBALS in $array
## $GLOBALS dump : _var_dump(get_defined_vars())
##
function _var_dump($mixed, $name='', $constants=0)
{
if(is_object($mixed))
{
_object_dump($mixed,'$'.$var);
return;
}
if(!is_array($mixed))
{
echo ($name ? '$'.$name.' = ' : '').@htmlspecialchars($mixed)."
\n";
return;
}
## $mixed is array
##
foreach($mixed AS $k=>$v)
{
$var = $name ? "${name}[\"$k\"]" : $k;
if(!$constants) $var = '$'.$var;
if(is_array($v) && sizeof($v)>0)
{
echo "$var = ".$v."
\n";
echo "
\n"; print_r($mixed); echo "\n"; } function _debug($key=31) { if(is_int($key)) { if($key<1 || $key>31) $key = 31; } else { $type = array('vars'=>1,'funcs'=>2,'cons'=>4,'class'=>8,'files'=>16); if(!$key = $type[$key]) $key = 15; } $bits = strrev(decbin($key)); echo "\n
VARIABLES :
\n"; if(preg_replace('/^([\d]+)\.([\d]+)\..+/','\\1\\2',PHP_VERSION) > 41) { _var_dump($GLOBALS); } else { _var_dump(get_defined_vars()); } } if($bits[1]) { echo "\n
FUNCTIONS :
\n"; _print_r(get_defined_functions()); } if($bits[2]) { echo "\n
CONSTANTS :
\n"; _var_dump(get_defined_constants(),'',1); } if($bits[3]) { echo "\n
CLASSES :
\n";
foreach(get_declared_classes() AS $v) {
echo "
class $v
\n";
echo "{
INCLUDED(or REQUIRED) FILES:
\n";
foreach(get_included_files() AS $v) echo "$v
\n";
}
echo "\n