在PHP中有没有办法转储"所有"变量名称及其相应的值?

loc*_*ock 8 php debugging

如果标题看起来太模糊了......嗯我想显示我用来生成页面的每个变量及其变量名称和值,是否可能以及如何?

    foreach($_SESSION as $varname => $value) {
        print "<b>".$varname."</b> = $value <br/>";
    }
Run Code Online (Sandbox Code Playgroud)

^上面的示例是我用来显示所有会话变量,如果我需要显示我设置显示页面的变量怎么办?他们是以某种形式的阵列注册还是我也应该单独回应它们?

roj*_*oca 32

你可以使用get_defined_vars()它来为你提供一个在调用函数的范围内声明的所有变量的数组,包括像$_SESSION和的全局变量$_GET.我建议像这样打印:

echo '<pre>' . print_r(get_defined_vars(), true) . '</pre>';
Run Code Online (Sandbox Code Playgroud)


Jos*_*iah 13

最简单的方法是使用get_defined_vars().

来自文档

此函数返回一个多维数组,其中包含所有已定义变量的列表,无论是环境,服务器还是用户定义的变量,都在调用get_defined_vars()的范围内.

生成此数组的var_dump将为您提供广泛的列表.

var_dump( get_defined_vars() );
Run Code Online (Sandbox Code Playgroud)