首頁 後端開發 php教程 分享5個非常有用的Laravel Blade指令

分享5個非常有用的Laravel Blade指令

May 31, 2018 pm 04:14 PM
blade laravel 用的

這篇文章主要跟大家分享介紹了5個非常有用的Laravel Blade指令,文中透過範例程式碼介紹的非常詳細,對大家的學習或工作有一定的參考學習價值,需要的朋友們一起來看一下吧

簡介

Blade是Laravel提供的一個非常簡單、強大的模板引擎,不同於其他流行的PHP模板引擎,Blade在視圖中並不約束你使用PHP原生程式碼。所有的Blade視圖都會被編譯成原生PHP程式碼並且快取起來直到被修改,這意味著對應用程式的效能而言Blade基本上是零開銷。 Blade視圖檔案使用.blade.php檔案擴充並存放在resources/views目錄下。

接下來我將帶大家認識下五個 Laravel Blade 指令,這些指令將讓你在解決特定問題時如虎添翼。如果你是剛接觸 Laravel 的用戶,這些小技巧能帶你去認識 Laravel Blade 模板引擎的便利與高效能。

廢話少說,讓我們開始吧。

1. 偵測使用者是否認證

你可以透過驗證使用者是否為空來偵測其是否認證:

@if(auth()->user())
 // 用户已认证
@endif
登入後複製

然而,Laravel 自帶的Blade 指令可以更簡潔地實現相同的功能:

@auth
 // 用户已认证
@endauth
登入後複製

#2. 偵測使用者是否為訪客

與認證相反,我們可以用auth 輔助函數的guest() 方法來偵測使用者是否為訪客:

@if(auth()->guest())
 // 用户未认证
@endif
登入後複製

不過Laravel 也為此提供了@guest 指令:

##

@guest
 // 用户未认证
@endguest
登入後複製

#我們也可以使用else 語句來組合這兩個命令:

@guest
 // 用户未认证
@else
 // 用户已认证
@endguest
登入後複製

#3. 如果第一個視圖存在則引入,否則引入第二個

建立多主題網站可能會有一個檔案如果存在就引入,否則就引入另一個的需要,你可以簡單地使用條件判斷來實作:

@if(view()->exists('first-view-name'))
 @include('first-view-name')
@else
 @include('second-view-name')
@endif
登入後複製

不過還是有一個更簡潔直覺的指令來做這件事:

##
@includeFirst(['first-view-name', 'second-view-name']);
登入後複製

4. 根據條件引入視圖
#當你只想在某一邏輯的基礎上(如:一個已通過認證的使用者)添加一些內容的時候,根據條件引入視圖就非常有用了。

你可以用@if 條件來這樣寫:

@if($post->hasComments())
 @include('posts.comments')
@endif
登入後複製

我們可以只用一行指令@includeWhen 來做:

@includeWhen($post->hasComments(), 'posts.comments');
登入後複製

5. 引入一個存在的視圖
如果你有自訂主題系統或你需要動態地建立Blade 視圖,那麼檢查檔案是否存在就是必須要做的。

可以在輔助函數view() 上呼叫exists 方法:

@if(view()->exists('view-name'))
 @include('view-name')
@endif
登入後複製

也可以使用Blade 指令includeIf 來處理:

@includeIf('view-name')
登入後複製

你可以透過Blade 官方文件了解更多實用的技巧來優化你Laravel 專案裡的前端模板。

重構快樂!

相關推薦:

Laravel框架使用Redis的方法

原始碼解析Laravel依賴注入步驟詳解

##

以上是分享5個非常有用的Laravel Blade指令的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP 與 Flutter 的比較:行動裝置開發的最佳選擇 PHP 與 Flutter 的比較:行動裝置開發的最佳選擇 May 06, 2024 pm 10:45 PM

PHP 與 Flutter 的比較:行動裝置開發的最佳選擇

PHP中如何使用物件-關聯映射(ORM)簡化資料庫操作? PHP中如何使用物件-關聯映射(ORM)簡化資料庫操作? May 07, 2024 am 08:39 AM

PHP中如何使用物件-關聯映射(ORM)簡化資料庫操作?

Laravel - Artisan 指令 Laravel - Artisan 指令 Aug 27, 2024 am 10:51 AM

Laravel - Artisan 指令

PHP 單元測試工具的優缺點分析 PHP 單元測試工具的優缺點分析 May 06, 2024 pm 10:51 PM

PHP 單元測試工具的優缺點分析

Laravel和CodeIgniter的最新版本對比 Laravel和CodeIgniter的最新版本對比 Jun 05, 2024 pm 05:29 PM

Laravel和CodeIgniter的最新版本對比

Laravel 和 CodeIgniter 中資料處理能力的比較如何? Laravel 和 CodeIgniter 中資料處理能力的比較如何? Jun 01, 2024 pm 01:34 PM

Laravel 和 CodeIgniter 中資料處理能力的比較如何?

PHP 程式碼單元測試與整合測試 PHP 程式碼單元測試與整合測試 May 07, 2024 am 08:00 AM

PHP 程式碼單元測試與整合測試

Laravel和CodeIgniter:哪種框架更適合大型專案? Laravel和CodeIgniter:哪種框架更適合大型專案? Jun 04, 2024 am 09:09 AM

Laravel和CodeIgniter:哪種框架更適合大型專案?

See all articles