如何在Laravel中使用Blade模板
本教程是《Laravel手冊》的一部分。從https://flaviocopes.com/access/ 下載手冊。
Laravel的視圖文件以 .blade.php
為結尾,並且是 Blade 模板。
Blade 是一個服務端模板語言。
在其基本形式下,它就是 HTML。正如你所看到的,上面我使用的這些模板只包含 HTML。
但你可以在Blade模板中做很多有趣的事情:插入數據、添加條件語句、使用循環、根據用戶是否已驗證顯示不同內容,或根據環境變量(例如生產或開發環境)顯示不同信息,等等。
以下是Blade的入門教程(更多資訊,我強烈推薦參考 官方Blade指南)。
在路由定義中,你可以將數據傳遞給Blade模板:
1 | Route::get('/test', function () { |
然後在模板中使用它:
1 | <h1>{{ $name }}</h1> |
{{ }}
語法允許你將任何數據添加到模板中,它會自動進行HTML轉義處理。
在其中,你還可以運行任何自己喜歡的PHP function,Blade會顯示該函數的返回值。
使用 {{-- --}}
注釋:
1 | {{-- <h1>test</h1> --}} |
條件語句可使用 @if
、@else
、@endif
達到:
1 | @if ($name === 'Flavio') |
還可以使用 @elseif
和 @unless
做更複雜的條件結構。
我們還有 @switch
,可以根据變量的結果來顯示不同的內容。
然後我們有一些常用操作的快捷方式,方便使用:
@isset
:如果參數已定義,顯示一個區塊@empty
:如果數組不包含任何元素,顯示一個區塊@auth
:如果用戶已驗證,顯示一個區塊@guest
:如果用戶未驗證,顯示一個區塊@production
:如果環境是生產環境,顯示一個區塊
使用 @php
指令,我們可以編寫任何PHP代碼:
1 | @php |
我們可以使用不同的指令實現循環:
@for
@foreach
@while
像這樣:
1 | @for ($i = 0; $i < 10; $i++) |
就像大多數編程語言一樣,我們有一些指令來控制循環,如 @continue
和 @break
。
在循環中,一個非常方便的 $loop
變量始終可用,用於提供有關循環的信息,例如是否第一次迭代、是否最後一次迭代、是否為偶數迭代、已完成多少迭代以及剩餘多少迭代。
這只是一個基本介紹。
tags: [“Laravel”, “Blade”, “PHP”]