1. 程式人生 > >【Laravel5.3 筆記整理八】Laravel檢視(二)邏輯控制、模板佈局、檔案包含

【Laravel5.3 筆記整理八】Laravel檢視(二)邏輯控制、模板佈局、檔案包含

1. 邏輯控制

1) if 語句

將下面的程式碼寫入 shitu1.blade.php

@if($qiangge > 100)
    <h2>胖美女</h2>
@elseif($qiangge > 80)
    <h2>中美女</h2>
@else
    <h2>瘦美女</h2>
@endif

例項:

  • web.php
Route::get('shitu1', "[email protected]");
  • app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class ShiTuController extends Controller
{
    public function index1()
    {
        // 傳入一個變數 qiangge ,體重為 80
        return view('shitu1')->with('qiangge', 80);
    }
}
  • resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>檢視1</title>
</head>
<body>
    <h1>我是檢視1頁面</h1>

    @if ($qiangge > 100)
        <h2>胖美女</h2>
    @elseif($qiangge > 80)
        <h2>中美女</h2>
    @else
<h2>瘦美女</h2> @endif </body> </html>

執行結果:

laravel檢視-邏輯控制(if判斷)

2) for 迴圈【常用】

將下面的程式碼寫入 shitu1.blade.php

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

    <h2>{{$i}}</h2>

@endfor

例項:

  • web.php
Route::get('shitu1', "[email protected]");
  • app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllrs;

use Illuminate\Http\Request;

use App\Http\Requests;

class ShiTuController extends Controller
{
    public function index1()
    {
        return view('shitu1');
    }
}
  • resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>檢視1</title>
</head>
<body>
    @for($i=0; $i<=10; $i++)

        <h2>{{$i}}</h2>

    @endfor
</body>
</html>

執行結果:

laravel檢視 - 邏輯控制(for迴圈)

3) while 迴圈【不推薦使用】

將程式碼寫入 shitu1.blade.php

{{$y=0}}
@while($y <= 5)

    {{$y++}}

    <h2>{{$y}}</h2>

@endwhile

例項:

  • web.php
Route::get('shitu1', "[email protected]");
  • app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class ShiTuController extends Controller
{
    public function index1()
    {
        return view('shitu1');
    }
}
  • resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>檢視1</title>
</head>
<body>

    {{$y=0}}
    @while($y <= 5)

        {{$y++}}

        <h2>{{$y}}</h2>

    @endwhile


</body>
</html>

執行結果:

laravel檢視 - 邏輯控制(while迴圈)

4) 巢狀

以下程式碼寫入 shitu1.blade.php

// 隔行換色
@for($i=0; $i<=10; $i++)

    @if($i%2)
        <h2 style="background:red">{{$i}}</h2>
    @else
        <h2 style="background:blue">{{$i}}</h2>
    @endif

@endfor

例項:

效果:實現隔行換色

  • web.php
Route::get('shitu1', "[email protected]");
  • app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class ShiTuController extends Controller
{
    public function index1()
    {
        return view('shitu1');
    }
}
  • resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>檢視1</title>
</head>
<body>
    <h1>我是檢視1頁面</h1>

    {{-- 隔行換色 --}}
    @for($i=0; $i<=10; $i++)

        @if($i%2)
            <h2 style="background:red">{{$i}}</h2>
        @else
            <h2 style="background:blue">{{$i}}</h2>
        @endif

    @endfor
</body>
</html>

執行結果:

laravel檢視-邏輯控制(綜合例項)

5) foreach 遍歷

將以下程式碼寫入 shitu1.blade.php

@foreach($data as $key => $value)
    <tr>
        <th>{{$value->id}}</th>
        <th>{{$value->name}}</th>
        <th>{{$value->pass}}</th>
        @if($value->status)
            <th>正常</th>
        @else
            <th>禁用</th>
        @endif
        <th>{{$value->time}}</th>
    </tr>
@endforeach

例項:

  • web.php
Route::get('shitu1', "[email protected]");
  • app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

use DB;

class ShiTuController extends Controller
{
    public function index1()
    {
        $data = DB::table('user')->get();
        return view('shitu1');
    }
}
  • resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>檢視1</title>
</head>
<body>
    <h1>我是檢視1頁面</h1>

    {{-- foreach 遍歷 --}}
    <table border="1" width="800px">
        <tr>
            <th>Id</th>
            <th>Name</th>
            <th>Pass</th>
            <th>Status</th>
            <th>Time</th>
        </tr>

        @foreach($data as $key => $value)

            <tr>
                <th>{{$value->id}}</th>
                <th>{{$value->name}}</th>
                <th>{{$value->pass}}</th>
                @if($value->status)
                    <th>正常</th>
                @else
                    <th>禁用</th>
                @endif
                <th>{{$value->time}}</th>
            </tr>

        @endforeach
    </table>

</body>
</html>

執行結果:

laravel檢視-邏輯控制(foreach遍歷)

2. 模板佈局

  把頁面的公共部分進行提取。

1)新建公共目錄

  (D:\phpStudy\PHPTutorial\WWW\laravel\resources\views)

​   新建 layout目錄

2)新建後臺公共檔案

  admin.blade.php

3) 開啟後臺公共檔案

​  將每一個頁面不一樣的部分用 @yield('title') 佔位,一個頁面可以有多個佔位,用名字區分。

4)普通頁面中該如何書寫

① 繼承公共的模板頁面

@extends('layout.admin')

② 修改內容區域

@section('title', '雲知夢後臺管理系統');

@section('main')

<div class="col-md-10">
    <div class="jumbotron">
        <img src="/admins/img/4.jpg" height="310px" width="100%">
        <h2>聯想 後臺管理系統</h2>
        <p>開發者:XXX</p>
    </div>
</div>

@endsection

11. 檔案包含

將以下的程式碼寫入到 baohan.blade.php

@include('public.footer')

例項:

  • web.php
Route::get('baohan', "[email protected]");
  • app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class ShiTuController extends Controller
{
    public function baohan()
    {
        return view('baohan');
    }
}
  • public 下建立一個 homes資料夾 ,專門使用者存放 前臺的樣式
  • resources / views / baohan.blade.php
<!doctype>
<html>
    <head>
        <meta charset="utf-8">
        <title>檔案包含</title>
    </head>
    <body>
        <!-- 頭部 -->
        @include('public.header')

        <!-- 內容 -->
            #code ...

        <!-- 底部 -->
        @include('public.footer')
    </body>
</html>
  • 在 resources / views 下,建立一個 public資料夾, 存放頭部和底部(由於頭部和底部是一個網站公共的部分,因此其他頁面只需要引入即可)
  • resources / views / public / header.blade.php
<div class="am-container header">
    <ul class="message-l">
        <div class="topMessage">
            <div class="menu-hd">
                <a href="#" target="_top" class="h">親,請登入</a>
                <a href="#" target="_top">免費註冊</a>
            </div>
        </div>
    </ul>
    <ul class="message-r">
        <div class="topMessage home">
            <div class="menu-hd">
                <a href="#" target="_top" class="h">商城首頁</a>            
            </div>
        </div>
        <div class="topMessage my-shangcheng">
            <div class="menu-hd MyShangcheng">
                <a href="#" target="_top">
                    <i class="am-icon-user am-icon-fw"></i>個人中心                
                </a>
            </div>
        </div>
        <div class="topMessage mini-cart">
            <div class="menu-hd">
                <a id="mc-menu-hd" href="#" target="_top">
                    <i class="am-icon-shopping-cart  am-icon-fw"></i>
                    <span>購物車</span>
                    <strong id="J_MiniCartNum" class="h">0</strong>
                </a>
            </div>
        </div>
        <div class="topMessage favorite">
            <div class="menu-hd">
                <a href="#" target="_top">
                    <i class="am-icon-heart am-icon-fw"></i>
                    <span>收藏夾</span>
                </a>
            </div>
        </div>
    </ul>
</div>
  • resources / views / public / footer.blade.php
<div class="footer ">
    <div class="footer-hd ">
        <p>
            <a href="# ">恆望科技</a>
            <b>|</b>
            <a href="# ">商城首頁</a>
            <b>|</b>
            <a href="# ">支付寶</a>
            <b>|</b>
            <a href="# ">物流</a>
        </p>
    </div>
    <div class="footer-bd ">
        <p>
            <a href="# ">關於恆望</a>
            <a href="# ">合作伙伴</a>
            <a href="# ">聯絡我們</a>
            <a href="# ">網站地圖</a>
            <em>© 2015-2025 Hengwang.com 版權所有</em>
        </p>
    </div>
</div>

相關推薦

Laravel5.3 筆記整理Laravel檢視邏輯控制模板佈局檔案包含

1. 邏輯控制 1) if 語句 將下面的程式碼寫入 shitu1.blade.php @if($qiangge > 100) <h2>胖美女</h2> @elseif($qiangge > 80)

OpenCV影象變換邊緣檢測:梯度運算元Sobel運算元和Laplace運算元

邊緣 邊緣(edge)是指影象區域性強度變化最顯著的部分。主要存在於目標與目標、目標與背景、區域與區域(包括不同色彩)之間,是影象分割、紋理特徵和形狀特徵等影象分析的重要基礎。 影象強度的顯著變化可分為: •階躍變化函式,即影象強度在不連續處的兩邊的畫

Linux學習筆記檔案檔案系統的壓縮,打包與備份

8.2Linux系統常見的壓縮指令   在 Linux 的環境中,壓縮檔案案的副檔名大多是: 『.tar, .tar.gz, .tgz, .gz, .Z, .bz2, *.xz』,為什麼會有這樣的副檔名呢?   這是因為 Linux 支援的壓縮指令非常多,且

C++學習筆記運算子過載

我們回顧一下運算子過載的特點: 運算子過載函式名必須為:operator<運算子>。 運算子的過載是通過運算子過載函式來實現的。對於二元運算子過載函式,函式的引數通常為一個即右運算元,運算子的左運算元為呼叫過載函式時的物件。對於一元運算子過載函式,運算子的左運算

C++學習筆記虛擬函式

虛擬函式與過載函式的關係 我們現在來比較一下規則比較多的虛擬函式和規則比較少的過載函式之間的差別: 普通函式過載時,其函式的引數個數或者引數型別必須有所不同,函式的返回型別也可以不同。(這個不同是比較嚴格的不同,是涉及本質的) 過載函式: 要求函式名、返回型別、引

筆記指令系統

三、定址方式   定址方式分為指令定址和資料定址兩大類。 1.指令定址   指令定址分為順序定址和跳躍定址兩種。   順序定址可通過程式計數器PC加1,自動形成下一條指令的地址;跳躍定址則通過轉移類指令實現。 2.資料定址   指令的地址碼欄位通常都不代表運算

第九周 專案3-分數類中的運算子過載

問題描述: 在第8周專案3基礎上 (1)定義分數的一目運算+和-,分別代表分數取正和求反,將“按位取反運算子”~過載為分數的求倒數運算。 (2)定義分數類中<<和>>運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。

JMeter學習錄制腳本

使用 get 運行 喜歡 錄制完成 帶來 免費 sdn title ---------------------------------------------------------------------------------------------------- 環境

4 簡單繪圖

dispose alt draw bsp rom 形狀 .html yellow tex 在上一篇裏已經向大家介紹了如何使用GDI+繪制簡單的圖像,這一篇繼續向大家介紹其它一些繪圖知識. 1.首先我們來看下上一篇中我們使用過的Pen. Pen的屬性主要有: Color(顏色

機器學習softmax迴歸

通過上篇softmax迴歸已經知道大概了,但是有個缺點,現在來仔細看看 Softmax迴歸模型引數化的特點 Softmax 迴歸有一個不尋常的特點:它有一個“冗餘”的引數集。為了便於闡述這一特點,假設我們從引數向量  中減去了向量 ,這時,每一個

jzoj5956 NOIP2018模擬11.7A組easy LCA 結論

分析 死因:思路錯了 一開始在考慮尤拉序和原序列單調棧的問題,這樣想其實可以分治(超麻煩)。 注意到一個結論,假如你要求n個點的lca,那麼你可以以任意順序排序,然後對相鄰求lca,再求深度最小的即可。 證明很顯然,考慮尤拉序,答案肯定會至少被一組相鄰的點蓋到, 這樣

vuevue入門

###元件傳參 父元件向子元件傳遞引數,通過屬性傳遞 <todo-item v-for="(val,index) in list" :key="index" :centent="val"></todo-item> // 定義一個全域性元件,

第13天Java集合---手動實現ArrayList及其他List介面實現的集合

1 ArrayList(續) 1.1 擴容與縮容 1.2 手動實現ArrayList 2 Vector 3 LinkedList 4 Stack 1 ArrayList(續) 1.1

對稱加密和非對稱加密以及CA的理解

非對稱加密更加安全但是費時費力,對稱加密雖然省時,快速但是不安全,於是就可以將它倆結合起來使用。 結合思路是這樣的:檔案傳輸用對稱加密,對稱加密的加密和解密用的都是同一個金鑰,用非對稱加密的公鑰對此對稱加密的金鑰進行加密,然後傳送出去,接收方用非對稱加密的私鑰對剛才用公鑰加密過的對稱加密的金鑰進

交換機開發—— 三層交換機報文轉發過程

如圖所示,假如主機A想訪問主機B,首先主機A會將自己的IP地址和子網掩碼做與操作,得出網路地址(如:Host-A的IP地址100.1.1.2與自身掩碼255.255.255.0做與操作後,得到的網路號是100.1.1.0).然後判斷目的IP地址(即Host-B的IP地址)

深度學習線性迴歸小批量隨機梯度下降及其python實現

文章目錄 概述 小批量隨機梯度下降 解析解和數值解 小批量隨機梯度下降 python實現 需要的先驗知識 程式碼和實驗 概述 本文

面試演算法——連結串列

一、連結串列是否有環判斷 題型: 判斷一個連結串列是否有環?如果無環則返回空,如果有環則返回第一個入環節點。 思路: 這類題目如果對於空間複雜度沒有要求的話,我們可以使用雜湊表來幫助我們實現遍歷連結串列過程中,連結串列節點的訪問記錄。但是這類題目的最佳解法可以做到空間複雜度為O(1)

Python開發模組:aiohttp

AIOHTTP   1、檔案上傳 ① 單個檔案上傳 服務端 async def post(self, request): reader = await request.multipart() # /!\ 不要忘了這步。(至於為什麼請搜尋 Pyth

MySqlSql優化——影響效能的因素

一、前言 在上一篇部落格中,小編向大家簡單介紹了一下Mysql執行的流程:客戶端傳送一條查詢給資料庫伺服器,伺服器先進行許可權檢測,然後在快取中查詢,如果命中了快取,就立即返回儲存在快取中的結果,如果沒有,就再經過解析器解析,前處理器進行預處理,優化器優化,得到

Linux 核心記憶體管理夥伴演算法

        通常情況下,一個高階作業系統必須要給程序提供基本的、能夠在任意時刻申請和釋放任意大小記憶體的功能,就像malloc 函式那樣,然而,實現malloc 函式並不簡單,由於程序申請記憶體的大小是任意的,如果作業系統對malloc 函式的實現方法不對,將直接導致