如何在PHP中打印变量名?

Ond*_*ták 1 php variables

我正在为我的webby编写一个简单的脚本,如果发生错误500,它会向我发送一封电子邮件.我想转储所有可能的变量,会话,POST或其他什么,当错误发生时出现,所以我可以尽可能精确地分析问题.

这是我现在的代码:

function variable_name( &$var ) {
    $var_name = array_search( $var, $GLOBALS );
    return "{$var_name} = \"{$var}\"";
}

$bar = "whatever";

echo variable_name( $bar ); // bar = "whatever"
Run Code Online (Sandbox Code Playgroud)

它只检查$ GLOBALS,但我需要检查和打印$ _POST,$ _SESSION,类字段等等.我google了一下,发现只是复杂的功能,这对于这么简单的任务来说似乎有些过分.是否有任何简单的目的或我应该只为每个变量类型编写一个函数?

ax.*_*ax. 5

用途get_defined_vars():

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

这包括$GLOBALS(自PHP 5.0.0), $_POST,$_SESSION等等.