我正在构建一个权限系统,我需要对每个控制器的每个方法都有粒度,所以我想用我的基本控制器上的 __call 魔术方法来实现这一点,如下所示:
public function __call($name, $args)
{
if ( $this->checkPermission() )
{
call_user_func_array(array($this, $name), $args);
}
else
{
// handle error
}
}
但显然这在 Laravel 4 中不起作用。模拟 __call 魔术方法的正确方法是什么?我想到了之前的过滤器,但它们没有被传递给被调用的方法名称和参数