关于php:var_dump,var_export&


Difference between var_dump,var_export & print_r

var_dumpvar_exportprint_r有什么区别?


Var dump is for debugging purposes.总是印刷结果。

1
2
3
4
5
6
7
// 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=UR is for debugging purposes,too,but does not include the member's type.如果你知道你的阵列中的元素类型,那是个好主意,但可能会误导其他人。根据Default prints the result,but allows returning as string instead by using the optional $return

ZZU1

Var xExport prints valid php code.如果你计算了一些值,并希望结果在另一个脚本中成为常数,则使用。注:无法处理参考周期/回归阵列,Whereas var_dumpprint_r查验。根据Default prints the result,but allows returning as string instead by using the optional $return

1
2
3
4
5
6
array (
  0 => '',
  1 => false,
  2 => 42,
  3 => array (0 => '42',),
)

我个人认为,这是最好的简明和准确的妥协。


与此相似(从手册中)

var_export() gets structured
information about the given variable.
It is similar to var_dump() with one
exception: the returned representation
is valid PHP code.

出口信息更多,如数据类型和元素大小。