Laravel Blade 快速指南

Laravel Blade 快速指南

這篇文章僅列出重點程式碼,如想了解語法細節,可參考
學習Laravel Blade視圖引擎,看這一篇就夠了

樣板控制

挖洞

@yield(‘{section name}’)

@section(‘{section name}’)
    <div>可以選擇性繼承的內容</div>
@show

填洞

填單一內容使用
@section(‘{yield name}’ , ’{ string }’)

填複雜內容使用
@section(‘{yield name}’)
@stop

包含 
@include(‘{view name}’,['key1'=>'value1','key2'=>'value2'])

繼承,通常寫在子視圖的頭 
@extends(‘{view name}’)

程式邏輯控制

條件判斷式

假如
@if
@elseif
@else 
@endif

除非
@unless 
@endunless

當
@switch

@endswitch

迴圈

@foreach( $tasks as $task ) 
    逐一取出陣列的內容來加以處理
@endforeach

@for( $i = 0 ; $i<10 ; $++ ) 

@endfor

@forelse( $tasks as $task )

@empty 
    目前沒有工作
@endforelse

@while

@endwhile
隱含變數 $loop

$loop->index 索引值,從0開始 $loop->iteration 第幾個,從1開始 $loop->remaining 還剩幾個 $loop->count 總共幾個 $loop->last 是否為最後 $loop->first 是否為第一

輸出內容

{{ 內容遇到程式碼會當純文字處理 }} {!! 內容遇到程式碼會渲染並執行 !!} {{- - 註解 --}} @{{ 顯示Blade語法 }}

實作範例

//resources/views/master.blade.php

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>
    @yield('title')
    </title>
</head>
<body>

    @yield('content')

    @section('js')
        <script src="js/1.js" />
    @show
    <p>js結束</p>
</body>
</html>

//resources/views/index.blade.php
@extends('layouts.master')

@section('js')
    <script src="2.js" />
    @parent
@stop

@section('title','首頁')

@section('content')
<div class="container clearfix">
    我的內容
</div>

 @foreach ($data as $tmp)
     <h2>{{ $tmp }}</h2>
     <h3>{{ $loop->index }} </h3>
 @endforeach
@stop

//routes/web.php
Route::get('/index','HomeController@index');

//app/Http/Controllers/HomeController.php
public function index()
{
    return view('index');
}

多視圖共享

//全域共享
view()->share('tel','0212345678');

//部分共享
view()->composer(['items.*'],function($view){
    $view->with('address','中山路一號');
});

分享這篇文章:
 

訂閱電子報,索取 Laravel 學習手冊

價值超過 3000 元,包含常用 Laravel 語法與指令!

一小時免費求職講座

3個應徵軟體工程師前該知道的秘訣

取得免費課程連結

Laravel 百萬年薪特訓營

從最基礎的 PHP 語法開始,包含所有你該知道的網頁基礎知識,連同 Laravel 從零開始一直到實戰,最後還將告訴你如何找好工作,讓你及早擁有百萬年薪