如果您需要转储比简单数组更复杂的结构,可根据需要使用print_r,var_dump或var_export。 print_r的和var_export有,你可以设置为“真”,如果你想保存的结果作为一个字符串而不是打印的输出缓冲区的第二个参数;的var_dump将只打印输出缓冲区,以捕获函数的输出就必须使用输出控制功能。
示例代码:
<?
$array = array(1, '2', 'apple');
$hash = array(
'a' => 1,
'b' => 'orange',
'c' => $array
);
$array_print_r = print_r($array, true);
$hash_print_r = print_r($hash, true);
$array_var_export = var_export($array, true);
$hash_var_export = var_export($hash, true);
?>
########### print_r results ###########
$array:
<?= $array_print_r ?>
$hash:
<?= $hash_print_r ?>
########### var_export results ###########
$array:
<?= $array_var_export ?>
$hash:
<?= $hash_var_export ?>
########### var_dump results ###########
$array:
<?= var_dump($array) ?>
$hash:
<?= var_dump($hash) ?>
示例输出: ###########的print_r结果###########
$array:
Array
(
[0] => 1
[1] => 2
[2] => apple
)
$hash:
Array
(
[a] => 1
[b] => orange
[c] => Array
(
[0] => 1
[1] => 2
[2] => apple
)
)
########### var_export results ###########
$array:
array (
0 => 1,
1 => '2',
2 => 'apple',
)
$hash:
array (
'a' => 1,
'b' => 'orange',
'c' =>
array (
0 => 1,
1 => '2',
2 => 'apple',
),
)
########### var_dump results ###########
$array:
array
0 => int 1
1 => string '2' (length=1)
2 => string 'apple' (length=5)
$hash:
array
'a' => int 1
'b' => string 'orange' (length=6)
'c' =>
array
0 => int 1
1 => string '2' (length=1)
2 => string 'apple' (length=5)