Rumah  >  Artikel  >  pembangunan bahagian belakang  >  关于Laravel重定向的七种方法详解

关于Laravel重定向的七种方法详解

藏色散人
藏色散人asal
2019-03-06 11:35:537822semak imbas

在本篇文章中,我将给大家介绍如何从controller控制器中将用户从一个页面重定向到另一个页面。我们通常会使用redirect()方法来重定向控制器中的用户。

关于Laravel重定向的七种方法详解

Laravel 5版本提供了redirect(),那么我们可以在Laravel 5.0、Laravel 5.1、Laravel 5.2和Laravel 5.3中简单地使用redirect()。

下面我们就给大家介绍七种Laravel重定向的方法。

1)重定向到URL

2)重定向回上一页

3)重定向到指定路由

4)带参数重定向到指定路由

5)重定向到控制器

6)重定向到带有参数的控制器

7)使用会话数据重定向

一、重定向URL

下面的例子我简单的重定向“itsolutionstuff/tags”的URL。

路由:

Route::get('itsolutionstuff/tags', 'HomeController@tags');

控制器:

public function home()
{
    return redirect('itsolutionstuff/tags');
}

二、重定向回上一页

在这个例子中,我们可以重定向回我们的前一个页面的URL,所以你可以用两种方法:

public function home()
{
    return back();
}
//或者
public function home2()
{
    return redirect()->back();
}

三、重定向到命名路由

代码示例如下:

路由:

Route::get('itsolutionstuff/tags', array('as'=> 'itsolutionstuff.tags', 'uses' => 'HomeController@tags'));

控制器:

public function home()
{
    return redirect()->route('itsolutionstuff.tags');
}

四、使用参数重定向到命名路由

代码示例如下:

路由:

Route::get('itsolutionstuff/tag/{id}', array('as'=> 'itsolutionstuff.tag', 'uses' => 'HomeController@tags'));

控制器:

public function home()
{
    return redirect()->route('itsolutionstuff.tag',['id'=>17]);
}

五、重定向到控制器

代码示例如下:

public function home()
{
    return redirect()->action('App\Http\Controllers\HomeController@home');
}

六、重定向到带有参数的控制器

代码示例如下:

public function home()
{
    return redirect()->action('App\Http\Controllers\HomeController@home',['id'=>17]);
}

七、使用会话数据重定向

我们还可以在控制器方法中用路由或url重定向时传递闪过的会话消息,如下所示。

public function home()
{
    return redirect('home')->with('message', 'Welcome to PHP.cn!');
}

相关laravel视频教程:《最新laravel商城实战视频教程

本篇文章就是关于Laravel 5使用redirect()重定向URL的多种方法介绍,希望对需要的朋友有所帮助!

Atas ialah kandungan terperinci 关于Laravel重定向的七种方法详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn