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


Posted in PHP onAugust 30, 2017

简介

Blade它不像其他流行的 PHP 模板引擎那样限制你在视图中使用原生的 PHP 代码,事实上它就是把 Blade 视图编译成原生的 PHP 代码并缓存起来。缓存会在 Blade 视图改变时而改变,这意味着 Blade 并没有给你的应用添加编译的负担。Blade 视图文件使用 .blade.php 后缀,一般情况下都被存储在 resources/views 目录。

1. 继承、片段、占位、组件、插槽

1.1 继承

1.1.1 定义父模板

Laravel/resources/views/base.blade.php

1.1.2 子模板继承

路径:Laravel/resources/views/child.blade.php

@extends('base')

1.2 片段

1.2.1 父模板定义片段

@section('part')
// 中间内容即使一个片段
@show

1.2.2 子模板填充片段

@section('part')

片段填充内容

@endsection

1.3 占位

1.3.1 父模板占位:

@yield('title')

1.3.2 子模板填充占位

第一种填充(文本):

@section('title' , '填充的文本占位')

第二种填充(文本 or html)

@section('title')

填充的占位

@endsection

1.4 组件、插槽

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

2. 数据显示

2.1 转义输出

{{ $name }}

2.2 未转义输出

{!! $name !!}

2.3 原格式输出

第一种(适合量不多):

@{{ name }}

第二种(适合量多):

@verbatim
{{ name }}
{{ sex }}
{{ age }}
@endverbatim

3. 流程控制

3.1 for

注意:

  • 没有 $loop 变量
  • 没有 @empty
  • 有 @break
  • 有 @continue
@for ($i = 0; $i < 10; ++$i)
 {{ $i }} <br />
@endfor

3.2 foreach

注意:

  • 有 $loop 变量
  • 没有 @empty
  • 有 @break
  • 有 @continue
@foreach ($data as $k => $v)
 {{ $k }} <br />
@endforeach

3.3 forelse

注意:

  • 有 $loop 变量
  • 必须有 @empty
  • 有 @break
  • 有 @continue
@foreach ($data as $k => $v)
 {{ $k }} <br />
@empty

    数组没有数据

@endforeach

4. 使用原生 PHP

@php 
echo "使用原生 PHP";
@endphp

5. 包含子视图

注意

  • 被包含的子视图可以引用父视图定义的所有变量。
  • 你可以传递额外的数据到子视图

定义父视图 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>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
DOMXML函数笔记
Oct 09 PHP
php+mysql分页代码详解
Mar 27 PHP
php addslashes 函数详细分析说明
Jun 23 PHP
PHP 变量定义和变量替换的方法
Jul 30 PHP
ThinkPHP的模版中调用session数据的方法
Jul 01 PHP
ThinkPHP模板输出display用法分析
Nov 26 PHP
PHP判断IP并转跳到相应城市分站的方法
Mar 25 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
Thinkphp事务操作实例(推荐)
Apr 01 PHP
php中Ioc(控制反转)和Di(依赖注入)
May 07 PHP
PHP后期静态绑定实例浅析
Dec 21 PHP
PHP dirname(__FILE__)原理及用法解析
Oct 28 PHP
php实现支持中文的文件下载功能示例
Aug 30 #PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 #PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
Aug 29 #PHP
PHP单例模式与工厂模式详解
Aug 29 #PHP
PHP迭代与递归实现无限级分类
Aug 28 #PHP
yii2中LinkPager增加总页数和总记录数的实例
Aug 28 #PHP
PHP大文件分割上传 PHP分片上传
Aug 28 #PHP
You might like
解决PHP超大文件下载,断点续传下载的方法详解
2013/06/06 PHP
解析PHP的session过期设置
2013/06/29 PHP
laravel 解决路由除了根目录其他都404的问题
2019/10/18 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
checkbox 多选框 联动实现代码
2008/10/22 Javascript
JavaScript为对象原型prototype添加属性的两种方式
2010/08/01 Javascript
js中arguments的用法(实例讲解)
2013/11/30 Javascript
extjs 如何给column 加上提示
2014/07/29 Javascript
使用typeof判断function是否存在于上下文
2014/08/14 Javascript
Bootstarp风格的toggle效果分享
2016/02/23 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
文件上传,iframe跨域数据提交的实现
2016/11/18 Javascript
jQuery中DOM节点的删除方法总结(超全面)
2017/01/22 Javascript
Bootstrap4如何定制自己的颜色和风格
2018/02/26 Javascript
element中的$confirm的使用
2020/04/26 Javascript
常用python数据类型转换函数总结
2014/03/11 Python
python连接oracle数据库实例
2014/10/17 Python
浅谈Python由__dict__和dir()引发的一些思考
2017/10/30 Python
python利用socketserver实现并发套接字功能
2018/01/26 Python
用scikit-learn和pandas学习线性回归的方法
2019/06/21 Python
python 判断字符串中是否含有汉字或非汉字的实例
2019/07/15 Python
Python list与NumPy array 区分详解
2019/11/06 Python
TensorFlow自定义损失函数来预测商品销售量
2020/02/05 Python
pymysql之cur.fetchall() 和cur.fetchone()用法详解
2020/05/15 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
详解Python中import机制
2020/09/11 Python
python各种excel写入方式的速度对比
2020/11/10 Python
欧舒丹俄罗斯官方网站:L’OCCITANE俄罗斯
2019/11/22 全球购物
最新大学生自我评价
2013/09/24 职场文书
师范生自我鉴定范文
2013/10/05 职场文书
最新的咖啡店创业计划书
2013/12/30 职场文书
英文留学推荐信范文
2014/01/25 职场文书
国家领导干部党的群众路线教育实践活动批评与自我批评材料
2014/09/23 职场文书
趵突泉导游词
2015/02/03 职场文书
心得体会格式及范文
2016/01/25 职场文书
idea 在springboot中使用lombok插件的方法
2021/08/02 Java/Android