执行var_dump()方法的时候会调用__debugInfo()方法
如果__debugInfo()没有定义,则var_dump()方法会输出对象中的所有属性。
示例代码如下:
<?php
class C {
private $prop;
public function __construct($val) {
$this->prop = $val;
}
/**
* @return array
*/
public function __debugInfo() {
return [
'propSquared' => $this->prop ** 2,
];
}
}
var_dump(new C(42));
输出结果如下:
object(C)#1 (1) { ["propSquared"]=> int(1764) }
注意:__debugInfo()方法只能用于PHP 5.6.0及更高版本。
登录后可发表评论