Laravel5.0學習系類2之模板引擎blade

Laravel5.0學習系類2之模板引擎blade

  • 分離html文件和數據文件
  • 模板引擎中的一部分寫法,

1.分離html文件和數據文件
當前的路由代碼如下:

Route::get('/',function(){
    $items=array(1,3,4,'hello');
    return View::make('home.index')->with('items',$items);
});
首先,我在views文件夾下面建立一個顯示html文件的前臺頁面文件(layout/master.blade.php)
master.blade.php文件內容
    此文件主要是寫html的內容
<!DOCTYPE html>
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body>
    <!--導航欄-->
    @section('nav')
        <li>home</li>
        <li>about</li>
    @show

    @yield('content')<!--顯示數據文件index裏面的content的section界面
    {{yidld('content','默認參數') 直接在界面出現默認參數幾個字,不會從數據文件中讀取content的文件}}-->
    </body>
</html>

數據文件還在home/index.blade.php文件下

@extends('layout.master')//載入master的html文件
//數據處理的代碼和master.blade.php相對應
@section('content')
    @foreach($items as $item)
        array content:{{$item}}<br>
    @endforeach
    <br>
@stop
//由於和html文件中有相同的nav,故而會擠掉html中nav
@section('nav')
    <li>Date page content</li>
    //下面這句就是保留html中的nav
    @parent {{--佈局頁面中的也留下--}}}
@stop

2.使用模板引擎的一些用法
//使用blade模板引擎,就可以省略掉<?php echo "da";?>這些代碼
直接使用@for,@endfor等等,如下所示

@foreach($items as $item)
    array content:{{$item}}<br>
@endforeach
<br>

@if(count($items))
    its contains content
@else
    its not contains content
@endif
<br>

@while()
@endwhile

@for($i=0;$i<10;$i++)
    qw
@endfor
<br>

@unless(count($items)>5)
    number lost
@endunless
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章