class B
{
public $c;
public function __construct()
{
$this->c = 111;
}
public function __sleep()
{
return [];
// return ['c'];
}
}
class A
{
public $a;
public $b;
public $ggg;
public function __construct($b)
{
$this->a = 1;
$this->b = $b;
$this->ggg = 213123;
}
public function __sleep()
{
return ['a', 'b'];
//return ['a', 'b', 'ggg'];
}
}
$a = new A(new B());
dd(serialize($a));
输出对比
"O:26:"App\Http\Controllers\Api\A":2:{s:1:"a";i:1;s:1:"b";O:26:"App\Http\Controllers\Api\B":0:{}}"
"O:26:"App\Http\Controllers\Api\A":3:{s:1:"a";i:1;s:1:"b";O:26:"App\Http\Controllers\Api\B":1:{s:1:"c";i:111;}s:3:"ggg";i:213123;}"