首頁 後端開發 php教程 Laravel 5 基礎(四)- Blade 簡介

Laravel 5 基礎(四)- Blade 簡介

Aug 08, 2016 am 09:26 AM
gt lt quot

在多個頁面中我們可能包含相同的內容,像是檔案頭,連結的css或js等。我們可以利用佈局檔完成這個功能。

讓我們新建一個佈局文件,例如 views/layout.blade.php

<code><!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>
<body>
    <div class="container">
        @yield('content')
    </div>
</body>
</html></code>
登入後複製

我們創建了不解的結構,引入了bootstrap,注意 @yield 是blade的佈局佔位符,未來我們的頁面內容將填充到這裡,修改 about.blade.php

<code>@extends('layout')

@section('content')
    
<h1>About {{ $first }} {{ $last }}</h1>

@stop</code>
登入後複製

上面的程式碼表示我們使用版面配置檔案 layout.blade.php, 然後在 content 段中加入內容。

routes.php 中加入:

<code>Route::get('about', 'PagesController@about');
Route::get('contact', 'PagesController@contact');</code>
登入後複製

PagesController.php 中加入:

<code>    public function contact() {
        return view('pages.contact');
    }</code>
登入後複製

新視圖 pages/contact.blade.php

<code>@extends('layout')

@section('content')
    <h1>Contact Me!</h1>
@stop</code>
登入後複製

Check it out!

在版面配置檔案中我們可以加入多個 @yield , 例如在 layout.blade.php 中加入 @yield('footer')

<code><!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>
<body>
    <div class="container">
        @yield('content')
    </div>

    @yield('footer')
</body>
</html></code>
登入後複製

例如 contact.blade.php 中有一段腳本,就可以放在這個段中。

<code>@extends('layout')

@section('content')
    <h1>Contact Me!</h1>
@stop

@section('footer')
    <script>
        alert('Contact from scritp')
    </script>
@stop</code>
登入後複製

訪問contact會有對話框,而about仍然是普通顯示

  • 使用 @if 來判斷
<code>@extends('layout')

@section('content')
    @if ($first = 'Zhang')
        <h1>Hello, Zhang</h1>
    @else
        <h1>Hello, nobody</h1>
    @endif
@stop</code>
登入後複製

也可以視同 @unless 等同於 if !, 還有 @foreach 等。

<code>    public function about()
    {
        $people = [
            'zhang san',
            'li si',
            'wang wu'
        ];
        return view('pages.about', compact('people'));
    }</code>
登入後複製
<code>@extends('layout')

@section('content')
    <h1>Person:</h1>
    <ul>
        @foreach($people as $person)
            <li>{{ $person }}</li>
        @endforeach
    </ul>
@stop</code>
登入後複製

有一種情況,資料可能來自資料庫,集合可能是空,像是這樣:

<code>$people = [];</code>
登入後複製

處理這種情況,請加入 @if 處理

<code>@extends('layout')

@section('content')
    @if (count($people))
        <h1>Person:</h1>
        <ul>
            @foreach($people as $person)
                <li>{{ $person }}</li>
            @endforeach
        </ul>
    @endif

    <h2>Other info</h2>
@stop</code>
登入後複製

That's better.

以上就介紹了Laravel 5 基礎(四)- 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)

華為GT3 Pro和GT4的差異是什麼? 華為GT3 Pro和GT4的差異是什麼? Dec 29, 2023 pm 02:27 PM

華為GT3 Pro和GT4的差異是什麼?

修復:截圖工具在 Windows 11 中不起作用 修復:截圖工具在 Windows 11 中不起作用 Aug 24, 2023 am 09:48 AM

修復:截圖工具在 Windows 11 中不起作用

如何修復無法連線到iPhone上的App Store錯誤 如何修復無法連線到iPhone上的App Store錯誤 Jul 29, 2023 am 08:22 AM

如何修復無法連線到iPhone上的App Store錯誤

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决

watch4pro好還是gt好 watch4pro好還是gt好 Sep 26, 2023 pm 02:45 PM

watch4pro好還是gt好

Microsoft正在推出Windows 11 23H2版本到有Copilot的發布預覽頻道 Microsoft正在推出Windows 11 23H2版本到有Copilot的發布預覽頻道 Sep 28, 2023 pm 07:17 PM

Microsoft正在推出Windows 11 23H2版本到有Copilot的發布預覽頻道

如何使用 iPadOS 17.4 優化 iPad 電池壽命 如何使用 iPadOS 17.4 優化 iPad 電池壽命 Mar 21, 2024 pm 10:31 PM

如何使用 iPadOS 17.4 優化 iPad 電池壽命

管澤元江疏影體驗華為 MateBook GT 14:科技藝術完美結合 管澤元江疏影體驗華為 MateBook GT 14:科技藝術完美結合 Aug 10, 2024 pm 09:51 PM

管澤元江疏影體驗華為 MateBook GT 14:科技藝術完美結合

See all articles