PHP invoke函数使用
<?php
class CallableClass
{
public function __invoke($param1, $param2)
{
var_dump($param1,$param2);
}
}
$obj = new CallableClass;
$obj(123, 456);//直接把对象当作方法使用
var_dump(is_callable($obj));
实例化对象本身是不能被调用,但是类中如果实现 __invoke() 方法,则把实例对象当作方法调用,会自动调用到 __invoke() 方法,参数顺序相同。