Laravel 5.2+ 使用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();
例如,我們當前位置處于以下頁面:
http://blog.sbot.io/articles/6?author=eagle
如果我們在該頁面點擊了某個操作,那么在我們的控制器中,我們輸出
echo url()->previous();
會發現輸出的結果與我們之前操作的頁面的url一致:
http://blog.sbot.io/articles/6?author=eagle
全局函數可以在blade模板中直接使用,所以如果我們要創建一個返回按鈕,我們可以在view中使用以下代碼:
當然,很多情況下我們也可以直接返回至指定的路徑名:
這里我們使用了極為常用的route函數,articles.index是articles這個資源(resource)的管理路徑名稱。
Laravel
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。