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 相关文章推荐
比较好用的PHP防注入漏洞过滤函数代码
Apr 11 PHP
基于php缓存的详解
May 15 PHP
php颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
Sep 23 PHP
php数组合并与拆分实例分析
Jun 12 PHP
php基于mcrypt_encrypt和mcrypt_decrypt实现字符串加密解密的方法
Jul 12 PHP
PHP函数引用返回的实例详解
Sep 11 PHP
一个简单的php MVC留言本实例代码(必看篇)
Sep 22 PHP
thinkPHP5.0框架开发规范简介
Mar 25 PHP
yii2项目实战之restful api授权验证详解
May 20 PHP
php实现的rc4加密解密类定义与用法示例
Aug 16 PHP
在laravel-admin中列表中禁止某行编辑、删除的方法
Oct 03 PHP
laravel框架模型、视图与控制器简单操作示例
Oct 10 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
10条PHP编程习惯助你找工作
2008/09/29 PHP
几个实用的PHP内置函数使用指南
2014/11/27 PHP
php+mysqli使用预处理技术进行数据库查询的方法
2015/01/28 PHP
关于laravel5.5的定时任务详解(demo)
2019/10/23 PHP
两个比较有用的Javascript工具函数代码
2010/02/17 Javascript
html a标签-超链接中confirm方法使用介绍
2013/01/04 Javascript
javascript获取form里的表单元素的示例代码
2014/02/14 Javascript
jQuery实现多按钮单击变色
2014/11/27 Javascript
Javascript中For In语句用法实例
2015/05/14 Javascript
JS基于FileSystemObject创建一个指定路径的TXT文本文件
2015/08/05 Javascript
JavaScript中instanceof运算符的使用示例
2016/06/08 Javascript
javascript鼠标滑过显示二级菜单特效
2020/11/18 Javascript
jQuery插件扩展实例【添加回调函数】
2016/11/26 Javascript
javascript实现数据双向绑定的三种方式小结
2017/03/09 Javascript
JS实现图片预加载之无序预加载功能代码
2017/05/12 Javascript
JS jQuery使用正则表达式去空字符的简单实现代码
2017/05/20 jQuery
React组件生命周期详解
2017/07/03 Javascript
小程序云开发部署攻略(图文教程)
2018/10/30 Javascript
vue element中axios下载文件(后端Python)
2019/05/10 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
原生js+canvas实现下雪效果
2020/08/02 Javascript
python爬取拉勾网职位数据的方法
2018/01/24 Python
python中partial()基础用法说明
2018/12/30 Python
python利用Tesseract识别验证码的方法示例
2019/01/21 Python
numpy数组广播的机制
2019/07/12 Python
浅析PEP572: 海象运算符
2019/10/15 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
环境科学专业个人求职信
2013/09/26 职场文书
高等教育学自荐书范文
2014/02/10 职场文书
捐书活动总结
2014/05/04 职场文书
党员年终个人总结
2015/02/14 职场文书
学校党支部承诺书
2015/04/30 职场文书
奖学金主要事迹范文
2015/11/04 职场文书
Java 定时任务技术趋势简介
2022/05/04 Java/Android
Python如何加载模型并查看网络
2022/07/15 Python