## 1.基本用法

##情形1  $name = laravel5
  <div class="title"> {{$name}} {{$name}}</div>
  //输出结果是 larave5 larave5 ##情形2 $name = laravel5 并且使用@的情形
  <div class="title"> {{$name}} @{{$name}}</div>
  //输出结果是 larave5{{$name}} ##情形3 $name=null的情况
  <div class="title"> {{$name or 'xxx'}}是一个优雅的框架</div>
  //输出结果是 xxx是一个优雅的框架 ##情形4 $name没有设置的情况下
  <div class="title"> {{isset($anme)?$name:'xxx'}}是一个优雅的框架</div>
  //输出结果是 xxx是一个优雅的框架 ##情形5 $str='<script>alert(1);</script>'
  <div class="title"> {{$str}}是一个优雅的框架</div>
  //输出结果是 <script>alert(1);</script>
  //标签被转换了,防止注入 ##情形6 $str='<script>document.write("laravel");</script>'
  <div class="title"> {!! $str !!}是一个优雅的框架</div>
  //输出结果是 laravel
  //使用双感叹号,这样就可以使用js输出laraval了

## 2.控制结构

##2.1 if的用法
  @if (count($records) === 1)
  我有一条记录!
  @elseif (count($records) > 1)
  我有多条记录!
  @else
  我没有任何记录!
  @endif ##2.2 unless的用法
  @unless (Auth::check())
  你尚未登录。
  @endunless ##2.3
//for的用法
  @for ($i = 0; $i < 10; $i++)
  目前的值为 {{ $i }}
  @endfor //foreach的用法
  @foreach ($users as $user)
  <p>此用户为 {{ $user->id }}</p>
  @endforeach //forelse的用法 扩展了foreach,当没有数据的时候会输出没有用户
  @forelse ($users as $user)
  <li>{{ $user->name }}</li>
  @empty
  <p>没有用户</p>
  @endforelse //while的用法
  @while (true)
  <p>我永远都在跑循环。</p>
  @endwhile

## 3.模板引擎子视图

##情形1
  ##父视图,layouts文件夹下的app.blade.php
  <div>头部内容</div>
  @yield('content')
  <div>尾部内容</div>   ##子视图中继承父类模板
  @extends('layouts.app')
  @section('content')
    <div>这里写父视图$yield('content')内容的替换部分</div>
  @endsection   ##子视图最终结果
  //头部内容
  //这里写父视图$yield('content')内容的替换部分
  //尾部内容 ##情形2
  #父视图,layouts文件夹下的app.blade.php
  <div>头部内容</div>
  @section('content')
    <div>我是父类视图的内容</div>
  @show
  <div>尾部内容</div>   ##子视图中继承父类模板
  @extends('layouts.app')
  @section('content')
  @parent
  <div>我是子类视图的内容</div>
  @endsection   //上面父类的写法使用 section和show的组合,子类中在section中使用@parent
  //这样就会在将父类和子类的内容都输出 <div>我是父类视图的内容</div> <div>我是父类视图的内容</div>   ##子视图最终结果
  //头部内容
  //我是父类视图的内容
  //我是子类视图的内容
  //尾部内容 ##情形3 使用include并且从子视图往父类视图传递参数   ##common文件夹下header.blade.php
  <div>我是公共头部{{$page}}</div>   ##common文件夹下footer.blade.php
  <div>我是公共尾部</div>   ##index.blade.php中使用以上两个共用部分
  @include'common.heaer,['page'=>",首页内容"]'
  <div>我是index的主体部分</div>
  @include'common.footer'   ##子视图最终结果
  //我是公共头部,首页内容
  //我是index的主体部分
  //我是公共尾部

laravel框架之blade模板引擎的更多相关文章

  1. PHP laravel 5.0 Blade 模板引擎 Api使用备注

    PHP laravel 5.0 Blade 模板引擎 Api使用备注 /** * PHP laravel 5.0 Blade 模板引擎 Api使用备注 **/ //子模版中开头,调用@extends( ...

  2. Laravel 5.1 Blade模板引擎

    为什么要使用blade 它是干什么用的? blade模板引擎使我们写HTML页面的地方,使用它是因为它能给我们提供很多的遍历,减少代码的重复率 提高开发效率.我们写blade的路径是 resource ...

  3. Laravel框架中Blade模板的用法

    1. 继承.片段.占位.组件.插槽 1.1 继承 1.定义父模板 Laravel/resources/views/base.blade.php 2.子模板继承 @extends('base') 1.2 ...

  4. laravel Blade 模板引擎

    与视图文件紧密关联的就是模板代码,我们在视图文件中通过模板代码和 HTML 代码结合实现视图的渲染.和很多其他后端语言不同,PHP 本身就可以当做模板语言来使用,但是这种方式有很多缺点,比如安全上的隐 ...

  5. Laravel 5.2 三、中间件、视图与 Blade 模板引擎

    一.中间件 Laravel 的 HTTP 中间件提供了对路由的一层过滤和保护.下面模拟一下用中间件验证后台登录. 1. 创建中间件 cmd 窗口进入项目目录,使用 artisan 命令创建 php a ...

  6. 为 Blade 模板引擎添加新文件扩展名

    因为一些原因,我准备把 Blessing Skin 的框架换成 Laravel 了(之前是自己搭建的一个框架),但是在模板迁移的时候遇到了一点问题. 之前我是使用的 XiaoLer/blade 这个从 ...

  7. PHP 安全三板斧:过滤、验证和转义之转义篇 & Blade模板引擎避免XSS攻击原理探究

    PHP 转义 实现 把输出渲染成网页或API响应时,一定要转义输出,这也是一种防护措施,能避免渲染恶意代码,造成XSS攻击,还能防止应用的用户无意中执行恶意代码. 我们可以使用前面提到的 htmlen ...

  8. Ci框架整合smarty模板引擎

    Ci框架整合smarty模板引擎 备注:下载smarty时,最好选择2.6版本,其他测试有坑,ci可以是2.2或其他 大体思路:将smarty封装成ci框架的一个类,然后重新配置一下smarty,这样 ...

  9. laravel框架总结(二) -- blade模板引擎

    ## 1.基本用法 ##情形1 $name = laravel5 <div class="title"> {{$name}} {{$name}}</div> ...

随机推荐

  1. Java基础教程(10)--类

    一.声明类   你已经见过了以如下方式定义的类: class MyClass { // field, constructor, and method declarations }   上面是声明类的最 ...

  2. JPA注解@GeneratedValue

    @GeneratedValue是JPA的标准用法, JPA提供四种标准用法,由@GeneratedValue的源代码可以看出. public enum GenerationType { TABLE, ...

  3. ORACLEserver实例DB的概念学习理解与总结【进阶一】

    个人原创,转自请在文章开头显眼位置注明出处:https://www.cnblogs.com/sunshine5683/p/10048824.html 一.以后看一个oracleserver,可以使用如 ...

  4. HDU 1428

    漫步校园 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  5. 在vue中子组件修改props引发的对js深拷贝和浅拷贝的思考

    不管是react还是vue,父级组件与子组件的通信都是通过props来实现的,在vue中父组件的props遵循的是单向数据流,用官方的话说就是,父级的props的更新会向下流动到子组件中,反之则不行. ...

  6. html active属性

    源代码 <div class="col-md-3"> <div class="list-group"> <a href=" ...

  7. 原生爬虫小Demo

    import re from urllib import request class Spider(): url = 'https://www.panda.tv/cate/lol' #[\s\S]匹配 ...

  8. elixir 模式匹配

    elixir 模式匹配刚接触还是有点不习惯,在Elixir里,=操作符被称为匹配操作符 iex(29)> x = 11iex(30)> x1iex(31)> 1 = x1iex(32 ...

  9. 递归方程T(n)=aT(n/b)+f(n)之通用解法

    ,b>1为常数,f(n)为函数,T(n)=aT(n/b)+f(n)为非负数,令x=logba: 1.       f(n)=o(nx-e),e>0,那么T(n)=O(nx). 2.     ...

  10. Linux安装Tomcat服务器发布项目教程

    前面小Alan跟大家聊了在Linux服务器上jdk运行环境的安装以及redis非关系型数据库的安装,今天继续跟大家聊聊Tomcat的安装,以及将我们的项目发布上去并成功的访问. 第一步:将tomcat ...