为什么PHP7中的var_dump格式不正确?

为什么PHP7中的var_dump格式不正确?,php,debugging,testing,formatting,Php,Debugging,Testing,Formatting,我在安装了PHP5.6的地方使用var_dump在本地调试一些php脚本,它在所有浏览器上的格式都非常漂亮 array (size=1) 0 => object(WP_Post)[1173] public 'ID' => int 33 public 'post_author' => string '1' (length=1) public 'post_date' => string '2018-01-11 17:26:22

我在安装了PHP5.6的地方使用var_dump在本地调试一些php脚本,它在所有浏览器上的格式都非常漂亮

array (size=1)
  0 => 
    object(WP_Post)[1173]
      public 'ID' => int 33
      public 'post_author' => string '1' (length=1)
      public 'post_date' => string '2018-01-11 17:26:22' (length=19)
      public 'post_date_gmt' => string '2018-01-11 23:26:22'(length=19)
当我用PHP7将同一个文件上传到一个生产框中时,输出就在那里,但格式不见了!有什么原因或线索可以解释为什么会发生这种情况吗

array(1) { [0]=> object(stdClass)#1162 (3) { ["ID"]=> string(2) "61" ["post_title"]=> str
这种“漂亮”的格式可能是因为Xdebug

但是,您始终可以使用
标记

<?php
    echo "<pre>";
    var_dump($var);
    echo "</pre>";

主要原因是XDebug!因为我在PHP7上使用Amazon Linux,默认情况下没有安装XDebug,所以只要安装XDebug,var_dump就会输出可读的文本版本。

我注意到我在本地安装了XDebug,而不是远程安装,这可能是原因吗?是的,几乎可以肯定是因为XDebug。事实上,如果您在本地版本上查看页面源代码,您可能会看到特定于xdebug的标记<代码>,等等。PHP7不是罪魁祸首,这只是巧合。