在PHP中转储许多变量

Rog*_*ger -1 php variables dumping

我确保这是一个非常常见的情况,当你必须测试变量(并且它们很多!)时,就像这个例子一样(我只是为了减少工作量而将这样的变量命名为vars):

    $variable0='red';
    $variable1='blue';
    $variable2='green';
    $variable3='pink';
    $variable4='purple';
    $variable5='hellow';
    $variable6='foo';
    $variable7='bar';
    $variable8='hi';
    $variable9='bye';

    echo
    '$variable0='.$variable0.'<br>
$variable1='.$variable1.'<br>
$variable2='.$variable2.'<br>
$variable3='.$variable3.'<br>
$variable4='.$variable4.'<br>
$variable5='.$variable5.'<br>
$variable6='.$variable6.'<br>
$variable7='.$variable7.'<br>
$variable8='.$variable8.'<br>
$variable9='.$variable9;
Run Code Online (Sandbox Code Playgroud)

我的问题是:有没有更好的方法使这种回声/转储/打印更容易?

当然,还有其他方法可以完成同样的主席工作:

        $x=
    '$variable0='."$variable0\n".
    '$variable1='."$variable1\n".
    '$variable2='."$variable2\n".
    '$variable3='."$variable3\n".
    '$variable4='."$variable4\n".
    '$variable5='."$variable5\n".
    '$variable6='."$variable6\n".
    '$variable7='."$variable7\n".
    '$variable8='."$variable8\n".
    '$variable9='."$variable9"
    echo nl2br($x);
Run Code Online (Sandbox Code Playgroud)

要么:

    $x=<<<HEREDOC
\$variable1=$variable1
\$variable2=$variable2
\$variable3=$variable3
\$variable4=$variable4
\$variable5=$variable5
\$variable6=$variable6
\$variable7=$variable7
\$variable8=$variable8
\$variable9=$variable9;
HEREDOC;
    echo nl2br($x);
Run Code Online (Sandbox Code Playgroud)

但也许PHP有一个功能,使这更容易?

顺便说一句,上面的所有3个解决方案都相同:

$variable1=blue<br>
$variable2=green<br>
$variable3=pink<br>
$variable4=purple<br>
$variable5=hellow<br>
$variable6=foo<br>
$variable7=bar<br>
$variable8=hi<br>
$variable9=bye;
Run Code Online (Sandbox Code Playgroud)

dec*_*eze 5

介绍compact:

var_dump(compact('foo', 'bar', 'baz'));
Run Code Online (Sandbox Code Playgroud)

不过,请注意,我明确地使用了三个非常不同的变量:$foo,$bar$baz.
如果你真的有字面意思$foo1,$foo2等等,你真的真的想要使用数组.倾销也是微不足道的:

$foo    = array();
$foo[0] = 'bar';
$foo[1] = 'baz';
var_dump($foo);
Run Code Online (Sandbox Code Playgroud)

一般来说,如果你有太多的变量浮动,你的范围可能太大,你应该将所有内容重构为许多较小的函数,或者你的算法比它需要的更复杂,或者你应该使用数组或其他而是数据结构.