如何格式化var_dump的输出以用作变量?

时间:2013-10-15 18:57:48

标签: php arrays

我有一个使用print_r吐出数组的函数,并希望捕获变量中的信息,将其输入到特定用例的函数中。 我简化了输出以便于理解。

[fruit] => 'banana'
[color] => 'yellow'
[sizes] => array('small', 'medium')

我希望它的格式如下:

$var = 'fruit' => 'banana', 'color' => 'yellow', 'sizes' => array('small', 'medium');

这样我就可以复制并粘贴第一个输出并将其分配给新的默认变量。

4 个答案:

答案 0 :(得分:1)

尝试使用var_export(); var_export tutorial

答案 1 :(得分:1)

此功能:

  1. var_export()
    • Pro:输出格式可以简单地复制/粘贴到PHP脚本中。
    • Con:必须粘贴到脚本中。如果您使用eval()来阅读那种可怕的做法,我会切断你。
  2. json_encode()/json_decode()
    • Pro:广泛用于多种语言,人性化,易于理解。
    • Con:旧版本的PHP本身不支持
  3. serialize()/unserialize()
    • Pro:适用于所有版本的PHP
    • Con:使用非打印字符[如NULL字节],这些字符可能会导致IO工作流程出现问题,而这些问题并未明确地识别此事实。

答案 2 :(得分:0)

尝试使用<pre></pre>标记进行包装,因此它看起来像这样:

echo '<pre>';
var_dump($var);
echo '</pre>';

答案 3 :(得分:0)

也可以考虑print_r,它的运算方式相似,但提供了第二个参数,当设置为'true'时,它将把值作为变量返回,而不是将其打印到STDOUT。