Blade 是 Laravel 所提供的簡單且強大的模板引擎。相較於其它知名的 PHP 模板引擎,Blade 並不會限制你必須在視圖中使用 PHP 程式碼。所有 Blade 視圖會被編譯成一般的 PHP 程式碼並快取直到它們被更動為止,這代表著基本上 Blade 不會對你的應用程式產生負擔。Blade 視圖檔案使用 .blade.php 做為副檔名,且通常儲存於 resources/views 資料夾。

所以當我們像這樣把變數帶到 blade 裡:

Route::get('/blade', function(){
    return view('blade', [
        'title'=>"Hello World"
    ]);
});

 

在 blade.blade.php 裡只要這樣就能顯示 title 的內容:

{{$title}}

 

使用 blade 轉換 json 資料也很方便,像我們帶一個關聯式陣列到 view 裡:

Route::get('/blade', function () {
    $users = [
        [
            "name" => "Jason",
            "email" => "[email protected]"
        ],
        [
            "name" => "Tom",
            "email" => "[email protected]"
        ]
    ];
    return view('blade', [
        'users'=>$users
    ]);
});

 

要轉成 json 只要這樣寫就好了:

<script>
  let users=@json($users);
</script>

 

如果我們把 html 帶到 view,樣板會把 html 的標籤當成字串輸出:

Route::get('/blade', function () {
    $content="

Gogo!!

";
    return view('blade', [
        'content'=>$content
    ]);
});

 

如果要把帶過來的 html 標籤顯示,就要用這種方法顯示:

{!! $content !!}