laravel框架总结(二) -- blade模板引擎
## 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) === )
我有一条记录!
@elseif (count($records) > )
我有多条记录!
@else
我没有任何记录!
@endif ##2.2 unless的用法
@unless (Auth::check())
你尚未登录。
@endunless ##2.3
//for的用法
@for ($i = ; $i < ; $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 ##模板内容:
<html>
<head>
<title>@yield('title')</title>
</head>
<body>
//sidebar区域
@section('sidebar')
这里是模板里面的内容
@show
//content区域
<div class="container">
@yield('content')
</div>
</body>
</html> ##子视图内容:
@extends('layouts.master')
@section('title', 'test page') //对应父视图中的sidebar区域
@section('sidebar')
//父视图中的内容保留
@parent
<p>子视图内容11111</p>
@endsection //对应父视图中的content区域
@section('content')
<p>子视图内容22222</p>
@endsection ##情形2 使用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模板引擎的更多相关文章
- Laravel之视图和Blade模板引擎
一.视图 1.视图文件存放在resources/views目录2.视图载入及传参 return view('greeting', ['name' => 'James']); 还可以通过with ...
- Laravel 5.2 三、中间件、视图与 Blade 模板引擎
一.中间件 Laravel 的 HTTP 中间件提供了对路由的一层过滤和保护.下面模拟一下用中间件验证后台登录. 1. 创建中间件 cmd 窗口进入项目目录,使用 artisan 命令创建 php a ...
- laravel Blade 模板引擎
与视图文件紧密关联的就是模板代码,我们在视图文件中通过模板代码和 HTML 代码结合实现视图的渲染.和很多其他后端语言不同,PHP 本身就可以当做模板语言来使用,但是这种方式有很多缺点,比如安全上的隐 ...
- PHP laravel 5.0 Blade 模板引擎 Api使用备注
PHP laravel 5.0 Blade 模板引擎 Api使用备注 /** * PHP laravel 5.0 Blade 模板引擎 Api使用备注 **/ //子模版中开头,调用@extends( ...
- Laravel 5.1 Blade模板引擎
为什么要使用blade 它是干什么用的? blade模板引擎使我们写HTML页面的地方,使用它是因为它能给我们提供很多的遍历,减少代码的重复率 提高开发效率.我们写blade的路径是 resource ...
- 为 Blade 模板引擎添加新文件扩展名
因为一些原因,我准备把 Blessing Skin 的框架换成 Laravel 了(之前是自己搭建的一个框架),但是在模板迁移的时候遇到了一点问题. 之前我是使用的 XiaoLer/blade 这个从 ...
- PHP 安全三板斧:过滤、验证和转义之转义篇 & Blade模板引擎避免XSS攻击原理探究
PHP 转义 实现 把输出渲染成网页或API响应时,一定要转义输出,这也是一种防护措施,能避免渲染恶意代码,造成XSS攻击,还能防止应用的用户无意中执行恶意代码. 我们可以使用前面提到的 htmlen ...
- laravel5.1框架基础之Blade模板继承简单使用方法分析
本文实例讲述了laravel5.1框架基础之Blade模板继承简单使用方法.分享给大家供大家参考,具体如下: 模板继承什么用? 自然是增强基础页面的复用,有利于页面文档的条理,也便于更改多处使用的内容 ...
- laravel框架之blade模板引擎
## 1.基本用法 ##情形1 $name = laravel5 <div class="title"> {{$name}} {{$name}}</div> ...
随机推荐
- SQL 面向对象
1.面向过程 int a = 10;int b =5;int c = a+b; int r1 = 10;int r2 = 5;double c = r1*r1*3.14 - r2*r2*3.14 缺点 ...
- javascript 异常处理和事件处理
异常捕获 1.异常:当javascript引擎执行JS代码时,发生了错误,导致程序停止运行. 2.异常抛出:当异常产生,并且将这个异常生成一个错误信息 3.异常捕获: try{发生异常的代码块:}ca ...
- JSP数据交互习题错误总结
1:如果注册完页面有中文字符需要在提交后的页面显示注册信息,切记先把接受到的request的编码方式改为中文:request.setCharacterEncoding("utf-8" ...
- fackbook的Fresco (FaceBook推出的Android图片加载库-Fresco)
[Android开发经验]FaceBook推出的Android图片加载库-Fresco 欢迎关注ndroid-tech-frontier开源项目,定期翻译国外Android优质的技术.开源库.软件 ...
- mac ruby rails安装(使用rvm)
mac的场合: which ruby -> /usr/bin/ruby -> 这是mac自带的ruby,我们希望能用管理ruby的版本. 安装rvm curl -L https://get ...
- java web sql注入测试(1)---概念概述
在进行java web 测试时,经常会忽略的测试种类就是sql注入测试,这类缺陷造成的原因是开发技术在这方面欠缺的表现,虽然不常见,但一旦有这类缺陷,就很因此对运营的数据造成很多不必要的损失,所以,还 ...
- zw版【转发·台湾nvp系列Delphi例程】HALCON SetLineStyle1
zw版[转发·台湾nvp系列Delphi例程]HALCON SetLineStyle1 procedure TForm1.Button1Click(Sender: TObject);var img : ...
- zw版【转发·台湾nvp系列Delphi例程】HALCON FillUpShape1
zw版[转发·台湾nvp系列Delphi例程]HALCON FillUpShape1 procedure TForm1.Button1Click(Sender: TObject);var img : ...
- Sqlserver常用的时间函数---GETDATE、GETUTCDATE、DATENAME
GETDATE 按 datetime 值的 Microsoft® SQL Server™ 标准内部格式返回当前系统日期和时间.语法GETDATE ( )返回类型datetime注释日期函数可用在 SE ...
- Qt可执行程序写入版本信息
[1]新建Qt工程 1.1 具体新建步骤不赘述. 1.2 新建工程后文件目录如下: 1.3 留意对比一下你的代码目录,可以发现我的文件目录中多了一个rc类型的资源文件.那么,它也就是关键点. 1.4 ...