1. 程式人生 > 程式設計 >Laravel框架使用技巧之使用url()全域性函式返回前一個頁面的地址方法詳解

Laravel框架使用技巧之使用url()全域性函式返回前一個頁面的地址方法詳解

注意:文章標題中5.2+表示該文章內容可向上相容,適用於Laravel版本5.2及更高(目前最新為5.6),但不可向下相容,即不適用於5.2版本以下。推薦大家花一點點時間,將自己的Laravel更新至5.6版本。

在後臺開發時,我們經常需要獲取使用者之前操作頁面的地址並生成一個返回之前頁面的連結。

而Laravel從版本5.2+開始,便提供了一系列全域性幫助函式(Helper Functions)來簡化我們的工作:

https://laravel.com/docs/5.2/helpers#method-url

要檢視更高版本的相應文件,請將以上鍊接中的版本號替換為相應版本即可。

幫助函式中有一些很常用到的,比如Paths中的public_path及storage_path,Miscellaneous中的dd、view、session等。

而今天我們要用到的是URLs中的函式:

//返回當前頁面的地址(不包含引數)
url()->current(); 

//返回當前頁面的完整地址(包含引數)
url()->full();  

//返回前一個頁面的地址(包含引數)
url()->previous();

例如,我們當前位置處於以下頁面:

//www.jb51.net/articles/6?author=eagle

如果我們在該頁面點選了某個操作,那麼在我們的控制器中,我們輸出

echo url()->previous();

會發現輸出的結果與我們之前操作的頁面的url一致:

//www.jb51.net/articles/6?author=eagle

全域性函式可以在blade模板中直接使用,所以如果我們要建立一個返回按鈕,我們可以在view中使用以下程式碼:

<a href="{{ url()->previous() }}" rel="external nofollow" >返回</a>

當然,很多情況下我們也可以直接返回至指定的路徑名:

<a href="{{ route('articles.index') }}" rel="external nofollow" >返回文章管理</a>

這裡我們使用了極為常用的route函式,articles.index是articles這個資源(resource)的管理路徑名稱。

對於route函式更多的使用例項,會在另一篇文章中進行詳述。

本文主要講解了Laravel框架使用url()全域性函式返回前一個頁面的地址的方法,更多關於Laravel框架的使用技巧請檢視下面的相關連結