var_dump() 和 print_r() 输出不同的值
var_dump() and print_r() output different values
我运行这个代码:
<?php
$test = $_SERVER['HTTP_HOST'];
var_dump($test);
print_r($test);
die();
我得到这个输出:
我运行这个代码:
<?php
$test = $_SERVER['HTTP_HOST'];
print_r($test);
var_dump($test);
die();
我得到这个输出:
为什么 print_r()
和 var_dump()
不能就案例 1 中 $test 的值达成一致?
有关我如何到达这里的背景信息。我正在 运行 宁一个 laravel/homestead 虚拟机框,我正在使用 Browsersync。 Browsersync 创建了一个我连接的代理 (localhost:3000
),它指向 laravel/homestead 虚拟机 (192.168.10.10
)。当请求通过代理时,代理会更改 Host
header 的值。
这是一个 Xdebug 错误。
解决方案:disable xdebug.
禁用 xdebug 的输出:
我运行这个代码:
<?php
$test = $_SERVER['HTTP_HOST'];
var_dump($test);
print_r($test);
die();
我得到这个输出:
我运行这个代码:
<?php
$test = $_SERVER['HTTP_HOST'];
print_r($test);
var_dump($test);
die();
我得到这个输出:
为什么 print_r()
和 var_dump()
不能就案例 1 中 $test 的值达成一致?
有关我如何到达这里的背景信息。我正在 运行 宁一个 laravel/homestead 虚拟机框,我正在使用 Browsersync。 Browsersync 创建了一个我连接的代理 (localhost:3000
),它指向 laravel/homestead 虚拟机 (192.168.10.10
)。当请求通过代理时,代理会更改 Host
header 的值。
这是一个 Xdebug 错误。
解决方案:disable xdebug.
禁用 xdebug 的输出: