Algo así (hay que trabajarlo y falta una función para remover variables, pero esta es la idea):
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
<script>
_vars=[];
function registrar(variable,valor,objeto){
var objeto= objeto || window;
objeto[variable]=valor;
_vars.push({_obj:objeto,_variable:variable,_valor:valor});
}
function verVars(){
if(!document.getElementById('log')){
var l=document.createElement('div');
l.id='log';
document.getElementsByTagName('body')[0].appendChild(l)
}
l=null;
document.getElementById('log').innerHTML='';
for(var i in _vars)
document.getElementById('log').innerHTML+=_vars[i]._obj+'-'+_vars[i]._variable+'-'+_vars[i]._valor+'<br />';
}
registrar('pepe',1);
registrar('algo',{});
registrar('juan','hola');
registrar('prop','unvalor',algo);
onload=verVars;
</script>
</head>
<body>
</body>
</html>