如何在 Laravel 的 @if 語句中獲取當前 URL?


要獲取當前 URL,您可以使用下面示例中說明的方法 -

示例 1

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; use Illuminate\Http\Response; class UserController extends Controller { public function index(Request $request) { return view('test'); } }

test.blade.php 檔案如下 -

<!DOCTYPE html> <html> <head> <style> body { font-family: 'Nunito', sans-serif; } </style> </head> <body class="antialiased"> <div> @if (Request::path() == 'users') <h1>The path is users</h1> @endif </div> </body> </html>

test.blade.php 中,Request::path() 用於檢查它是否指向使用者,然後僅顯示 h1 標籤。Request::path() 返回正在使用的當前URL

示例 2

在本例中,讓我們使用url()->current() 方法,如下例所示。url()->current() 提供當前 URL 的完整路徑。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; class UserController extends Controller { public function index(Request $request) { return view('test'); } }

Test.blade.php

<!DOCTYPE html> <html> <head> <style> body { font-family: 'Nunito', sans-serif; } </style> </head> <body class="antialiased"> <div> @if (url()->current() == 'https://:8000/users') <h1>The path is users</h1> @endif </div> </body> </html>

執行上述示例後,它會在瀏覽器上列印以下內容 -

The path is users

示例 3

在本例中,我們將使用Request::url()。它的輸出與url()->current() 相同,它返回完整的 URL,如下例所示 -

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; class UserController extends Controller { public function index(Request $request) { return view('test'); } }

Test.blade.php

<!DOCTYPE html> <html> <head> <style> body { font-family: 'Nunito', sans-serif; } </style> </head> <body class="antialiased"> <div> @if (Request::url() == 'https://:8000/users') <h1>The path is users</h1> @endif </div> </body> </html>

執行上述示例後,它會在瀏覽器上列印以下內容 -

The path is users

示例 4

使用Request::is()

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; class UserController extends Controller{ public function index(Request $request) { return view('test'); } }

Test.blade.php

<!DOCTYPE html> <html> <head> <style> body { font-family: 'Nunito', sans-serif; } </style> </head> <body class="antialiased"> <div> @if (Request::is('users')) <h1>The path is users</h1> @endif </div> </body> </html>

在上面的示例中使用了Request::is()。如果給定的字串存在於 URL 中,則返回 true/false。

執行上述示例後,它會在瀏覽器上列印以下內容 -

The path is users

更新於: 2022-08-30

1K+ 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.