var_dump、 var_export和 print_r之间有什么区别?
var_dump
var_export
print_r
var_dump和 var_export是这样关联的(来自 手动操作)
Var _ export ()得到结构化 关于给定变量的信息。 它类似于 var _ dump () 异常: 返回的表示形式 是有效的 PHP 代码。
它们不同于 print_r,var_dump输出更多的信息,比如数据类型和元素的大小。
Var _ dump 用于调试目的。
// var_dump(array('', false, 42, array('42'))); array(4) { [0]=> string(0) "" [1]=> bool(false) [2]=> int(42) [3]=> array(1) {[0]=>string(2) "42")} }
Print _ r 也是用于调试目的,但不包括成员的类型。如果您知道数组中元素的类型,那么使用它是一个好主意,但在其他情况下可能会产生误导。默认情况下,print_r打印结果,但是允许使用可选的 $return参数以字符串形式返回。
$return
Array ( [0] => [1] => [2] => 42 [3] => Array ([0] => 42) )
Var _ export 打印有效的 php 代码。如果您计算了一些值并希望将结果作为另一个脚本中的常量,则使用。注意,var_export不能处理引用循环/递归数组,而 var_dump和 print_r检查这些循环/递归数组。默认情况下,var_export打印结果,但是允许使用可选的 $return参数以字符串形式返回。
array ( 0 => '', 1 => false, 2 => 42, 3 => array (0 => '42',), )
就个人而言,我认为 var_export是最好的折衷简洁和精确。