参考文档: http://php.net/manual/zh/language.oop5.magic.php#object.invoke
a.对不可访问的对象赋值的时候 __set
b. 读取不可访问的对象的时候 __get
c. 对可以访问的属性调用 isset empty __isset
d. 对不可访问的对象调 unset __unset
e. 构造方法 __construct
f. 一个对象被当成一个字符串返回的时候应该返回什么 __toString
g. 当以调用函数的方式调用对象的时候
class CallableClass
{
function __invoke($x) {
var_dump($x);
}
}
$obj = new CallableClass;
$obj(5);
var_dump(is_callable($obj));