php 魔术方法 __debugInfo()

array __debugInfo ( void )

该方法在var_dump()类对象的时候被调用,如果没有定义该方法,则var_dump会打印出所有的类属性

示例:

class C {
    private $prop;

    public function __construct($val) {
        $this->prop = $val;
    }

    public function __debugInfo() {
        return [
            'propSquared' => $this->prop ** 2,
        ];
    }
} 
var_dump(new C(42));

结果 :

object(C)#1 (1) {
  ["propSquared"]=>
  int(1764)
}

 

 

你可能感兴趣的:(php 魔术方法 __debugInfo())