Laravel框架中Blade模板的用法

1. 继承、片段、占位、组件、插槽
1.1 继承 1、定义父模板 Laravel/resources/views/base.blade.php 2、子模板继承 @extends('base')
1.2 片段 1、父模板定义片段 @section('part') // 中间内容即使是一个片段 @show

2、子模板填充片段 @section('part') // 片段填充内容(后台的表单、列表等) @endsection 1.3 占位 1、父模板占位 @yield('title') 2、子模板填充占位 第一种填充(文本): @section('title' , '填充的文本占位') 第二种填充(文本 or html) @section('title') // 填充的占位 @endsection 1.4 组件、插槽 1、定义组件 // 路径:Laravel/resources/views/component.blade.php <div class='component'> <!-- $title$content 变量实际上就是预定义的插槽 --> <div class='title'>{{ $title }}</div> <div class='content'>{{ $content }}</div> </div> 2、使用组件 // 路径:Laravel/resources/views/test.blade.php @component('component') @slot('title') 组件标题 @endsolt @slot('content') 组件内容 @endslot @endcomponent 2.数据显示 2.1 转义输出 {{ $name }} 2.2 未转义输出 {!! $name !!} 2.3 打印内容并带一个默认值 {{ $var or 'default' }} 2.4 原格式输出 // 第一种(适合量不多): @{{ name }} // 第二种(适合量多): @verbatim {{ name }} {{ sex }} {{ age }} @endverbatim 3. 流程控制
3.1 for @for ($i = 0; $i < 10; ++$i) {{ $i }} <br /> @endfor 3.2 foreach @foreach ($data as $k => $v) {{ $k }} <br /> @endforeach 3.3 forelse @foreach ($data as $k => $v) // $data有值 {{ $k }} <br /> @empty // $data没有值 @endforeach 3.4 if @if(condition) - if开始 @else - else不带条件 @elseif(condition) - else带条件 @endif - 结束if 3.5 while @while(condition) - while循环开始 @endwhile - while循环结束 3.6 unless @unless(condition) - unless开始 @endunless - unless结束 4. 使用原生 PHP @php // 里面写php代码 echo "使用原生 PHP"; @endphp 5. 包含子视图 被包含的子视图可以引用父视图定义的所有变量。 你可以传递额外的数据到子视图 定义父视图 parent.blade.php,并包含子视图 child.blade.php,且传入额外数据 <!-- 包含子视图 --> @include("child" , [ "other" => "额外数据" ])
原文地址:https://www.cnblogs.com/sgm4231/p/10190587.html