源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Laravel框架中Blade模板的用法示例

  • 时间:2021-01-30 10:50 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Laravel框架中Blade模板的用法示例
[b]简介[/b] Blade它不像其他流行的 PHP 模板引擎那样限制你在视图中使用原生的 PHP 代码,事实上它就是把 Blade 视图编译成原生的 PHP 代码并缓存起来。缓存会在 Blade 视图改变时而改变,这意味着 Blade 并没有给你的应用添加编译的负担。Blade 视图文件使用 .blade.php 后缀,一般情况下都被存储在 resources/views 目录。 [b]1. 继承、片段、占位、组件、插槽[/b] [b]1.1 继承[/b] 1.1.1 定义父模板
Laravel/resources/views/base.blade.php
1.1.2 子模板继承 路径:Laravel/resources/views/child.blade.php
@extends('base')
[b]1.2 片段 [/b] 1.2.1 父模板定义片段
@section('part')
// 中间内容即使一个片段
@show
1.2.2 子模板填充片段
@section('part')
片段填充内容
@endsection
[b]1.3 占位 [/b] 1.3.1 父模板占位:
@yield('title')
1.3.2 子模板填充占位 第一种填充(文本):
@section('title' , '填充的文本占位')
第二种填充(文本 or html)
@section('title')
填充的占位
@endsection
[b]1.4 组件、插槽[/b] 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>
1.4.2 使用组件 路径:Laravel/resources/views/test.blade.php
@component('component')
 @slot('title')
  组件标题
 @endsolt
 
 @slot('content')
  组件内容
 @endslot
@endcomponent
[b]2. 数据显示[/b] [b]2.1 转义输出[/b]
{{ $name }}
2.2 未转义输出
{!! $name !!}
2.3 原格式输出 第一种(适合量不多):
@{{ name }}
第二种(适合量多):
@verbatim
{{ name }}
{{ sex }}
{{ age }}
@endverbatim
[b]3. 流程控制 [/b] [b]3.1 for [/b] [b]注意:[/b] [list] [*]没有 $loop 变量[/*] [*]没有 @empty[/*] [*]有 @break[/*] [*]有 @continue[/*] [/list]
@for ($i = 0; $i < 10; ++$i)
 {{ $i }} <br />
@endfor
[b]3.2 foreach[/b] [b]注意:[/b] [list] [*]有 $loop 变量[/*] [*]没有 @empty[/*] [*]有 @break[/*] [*]有 @continue[/*] [/list]
@foreach ($data as $k => $v)
 {{ $k }} <br />
@endforeach
[b]3.3 forelse[/b] [b]注意:[/b] [list] [*]有 $loop 变量[/*] [*]必须有 @empty[/*] [*]有 @break[/*] [*]有 @continue[/*] [/list]
@foreach ($data as $k => $v)
 {{ $k }} <br />
@empty
    数组没有数据
@endforeach
[b]4. 使用原生 PHP[/b]
@php 
echo "使用原生 PHP";
@endphp
[b]5. 包含子视图[/b] [b]注意[/b] [list] [*]被包含的子视图可以引用父视图定义的所有变量。[/*] [*]你可以传递额外的数据到子视图[/*] [/list] 定义父视图 parent.blade.php,并包含子视图 child.blade.php,且传入额外数据
/**
 * 父视图
 * 父视图拥有变量 $name = 'chenxuelong'
 */

<div class='parent'>
 <div class='username'>{{ $username }}</div>
 <div class='child'>
  <!-- 包含子视图 -->
  @include('child' , [
   'other' => '额外数据'
  ])
 </div>
</div>

/**
 * 子视图
 */
 <div class='username'>{{ $username }}</div>
 <div class='other'>{{ $other }}</div>
[b]总结[/b] 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程素材网的支持。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部