使用闭包就可以实现了
<?php
class Books{
public $count = 1;
private $sum = 2;
}
function getInitializer(Books $books)
{
return \Closure::bind(function () use ($books) {
$books->sum = 5;
}, null, Books::class);
}
$books = new Books();
call_user_func(getInitializer($books));
var_dump($books);