php数组输出代码结构,PHP 输出数组和对象的结构化视图

示例

print_r()-输出数组和对象 以进行调试

print_r 将输出人类可读的数组或对象格式。

您可能有一个数组或对象变量。尝试将其输出为echo会引发错误:

Notice: Array to string conversion。您可以改用print_r函数来转储此变量的人类可读格式。您可以将true作为第二个参数传递,以将内容作为字符串返回。

$myobject = new stdClass();

$myobject->myvalue = 'Hello World';

$myarray = [ "Hello", "World" ];

$mystring = "Hello World";

$myint = 42;

// 使用print_r,我们可以查看数组保存的数据。

print_r($myobject);

print_r($myarray);

print_r($mystring);

print_r($myint);

输出以下内容:

stdClass Object

(

[myvalue] => Hello World

)

Array

(

[0] => Hello

[1] => World

)

Hello World

42

此外,来自的输出print_r可以捕获为字符串,而不是简单地回显。例如,以下代码会将的格式化版本转储$myarray到新变量中:

$formatted_array = print_r($myarray, true);

请注意,如果您正在浏览器中查看PHP的输出,并且将其解释为HTML,则不会显示换行符,除非您执行类似的操作,否则输出的可读性将大大降低

echo '

' . print_r($myarray, true) . '
';打开页面的源代码也将以相同的方式格式化变量,而无需使用
标签。

或者,您可以告诉浏览器您输出的是纯文本,而不是HTML:

header('Content-Type: text/plain; charset=utf-8');

print_r($myarray);

var_dump()-输出有关内容的人类可读调试信息,argument(s)包括其类型和值

print_r与之相比,输出更加详细,因为它还输出变量的类型以及其值和其他信息,例如对象ID,数组大小,字符串长度,参考标记等。

您可以var_dump用来输出更详细的版本以进行调试。

var_dump($myobject, $myarray, $mystring, $myint);

输出更详细:

object(stdClass)#12 (1) {

["myvalue"]=>

string(11) "Hello World"

}

array(2) {

[0]=>

string(5) "Hello"

[1]=>

string(5) "World"

}

string(11) "Hello World"

int(42)

注意:如果在开发环境中使用xDebug,则默认情况下var_dump的输出是受限/截断的。有关更改此选项的更多信息,请参见官方文档。

var_export()-输出有效PHP代码

var_export()转储PHP该项目的可解析表示形式。您可以将true作为第二个参数传递,以将内容返回到变量中。

var_export($myarray);

var_export($mystring);

var_export($myint);

输出是有效的PHP代码:

array (

0 => 'Hello',

1 => 'World',

)

'Hello World'

42

要将内容放入变量中,可以执行以下操作:

$array_export = var_export($myarray, true);

$string_export = var_export($mystring, true);

$int_export = var_export($myint, 1); // 任何“真实”值

之后,您可以像这样输出:

printf('$myarray = %s; %s', $array_export, PHP_EOL);

printf('$mystring = %s; %s', $string_export, PHP_EOL);

printf('$myint = %s; %s', $int_export, PHP_EOL);

这将产生以下输出:

$myarray = array (

0 => 'Hello',

1 => 'World',

);

$mystring = 'Hello World';

$myint = 42;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值