Php Laravel-调用重定向回的函数

Php Laravel-调用重定向回的函数,php,laravel,laravel-5.2,Php,Laravel,Laravel 5.2,我写信是想问你关于在laravel中调用函数的问题。我有一个函数正在做一些事情,在这个函数中,我调用另一个函数来检查权限 我像这样调用函数:self::checkPermissions(var1,var2) 在checkPermissions函数中,我正在检查用户是否具有某些权限。如果他没有权限,我会将他重定向回。return redirect()->back() 结论:为什么调用的函数无法重定向用户?我建议从checkPermissions函数返回bool变量。差不多 public funct

我写信是想问你关于在laravel中调用函数的问题。我有一个函数正在做一些事情,在这个函数中,我调用另一个函数来检查权限

我像这样调用函数:
self::checkPermissions(var1,var2)

checkPermissions函数中,我正在检查用户是否具有某些权限。如果他没有权限,我会将他重定向回。
return redirect()->back()


结论:为什么调用的函数无法重定向用户?

我建议从
checkPermissions
函数返回
bool
变量。差不多

public function index()
{
    $havePermission = self::checkPermissions(var1, var2);

    if(!$havePermission) return redirect()->back();

    // Else code here
}

private function checkPermissions($var1, $var2)
{
    // return true or false
}

您不能这样重定向,因为
redirect()->back()
是一个响应,它返回一个laravel响应,并且响应必须返回到通过路由调用的控制器,所以您可以将用户重定向回去。

显示重定向代码查看,使用
return back()返回不是解决方案。您可以返回bool而不是重定向回,因此您可以随时重定向回。搜索关于
http response laravel
。我知道我可以这样做。但这不是我问题的答案。问题是“为什么被调用的函数不能重定向用户?”因为它与路由有关。你应该了解更多关于路线和反应的信息。无论如何,你的答案不是我想要的答案。我了解路线和反应。