【Laravel5.3 笔记整理八】Laravel视图(二)逻辑控制、模板布局、文件包含
1. 逻辑控制
1) if 语句
将下面的代码写入 shitu1.blade.php
@if($qiangge > 100)<h2>胖美女</h2>
@elseif($qiangge > 80)<h2>中美女</h2>
@else<h2>瘦美女</h2>
@endif
实例:
- web.php
Route::get('shitu1', "ShiTuController@index1");
- app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests;class ShiTuController extends Controller
{public function index1(){// 传入一个变量 qiangge ,体重为 80return view('shitu1')->with('qiangge', 80);}
}
- resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>视图1</title>
</head>
<body><h1>我是视图1页面</h1>@if ($qiangge > 100)<h2>胖美女</h2>@elseif($qiangge > 80)<h2>中美女</h2>@else<h2>瘦美女</h2>@endif</body>
</html>
运行结果:
2) for 循环【常用】
将下面的代码写入 shitu1.blade.php
@for($i=0; $1<=10; $i++)<h2>{{$i}}</h2>@endfor
实例:
- web.php
Route::get('shitu1', "ShiTuController@index1");
- app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllrs;use Illuminate\Http\Request;use App\Http\Requests;class ShiTuController extends Controller
{public function index1(){return view('shitu1');}
}
- resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>视图1</title>
</head>
<body>@for($i=0; $i<=10; $i++)<h2>{{$i}}</h2>@endfor
</body>
</html>
运行结果:
3) while 循环【不推荐使用】
将代码写入 shitu1.blade.php
{{$y=0}}
@while($y <= 5){{$y++}}<h2>{{$y}}</h2>@endwhile
实例:
- web.php
Route::get('shitu1', "ShiTuController@index1");
- app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests;class ShiTuController extends Controller
{public function index1(){return view('shitu1');}
}
- resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>视图1</title>
</head>
<body>{{$y=0}}@while($y <= 5){{$y++}}<h2>{{$y}}</h2>@endwhile</body>
</html>
运行结果:
4) 嵌套
以下代码写入 shitu1.blade.php
// 隔行换色
@for($i=0; $i<=10; $i++)@if($i%2)<h2 style="background:red">{{$i}}</h2>@else<h2 style="background:blue">{{$i}}</h2>@endif@endfor
实例:
效果:实现隔行换色
- web.php
Route::get('shitu1', "ShiTuController@index1");
- app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests;class ShiTuController extends Controller
{public function index1(){return view('shitu1');}
}
- resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>视图1</title>
</head>
<body><h1>我是视图1页面</h1>{{-- 隔行换色 --}}@for($i=0; $i<=10; $i++)@if($i%2)<h2 style="background:red">{{$i}}</h2>@else<h2 style="background:blue">{{$i}}</h2>@endif@endfor
</body>
</html>
运行结果:
5) foreach 遍历
将以下代码写入 shitu1.blade.php
@foreach($data as $key => $value)<tr><th>{{$value->id}}</th><th>{{$value->name}}</th><th>{{$value->pass}}</th>@if($value->status)<th>正常</th>@else<th>禁用</th>@endif<th>{{$value->time}}</th></tr>
@endforeach
实例:
- web.php
Route::get('shitu1', "ShiTuController@index1");
- app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests;use DB;class ShiTuController extends Controller
{public function index1(){$data = DB::table('user')->get();return view('shitu1');}
}
- resources / views / shitu1.blade.php
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>视图1</title>
</head>
<body><h1>我是视图1页面</h1>{{-- foreach 遍历 --}}<table border="1" width="800px"><tr><th>Id</th><th>Name</th><th>Pass</th><th>Status</th><th>Time</th></tr>@foreach($data as $key => $value)<tr><th>{{$value->id}}</th><th>{{$value->name}}</th><th>{{$value->pass}}</th>@if($value->status)<th>正常</th>@else<th>禁用</th>@endif<th>{{$value->time}}</th></tr>@endforeach</table></body>
</html>
运行结果:
2. 模板布局
把页面的公共部分进行提取。
1)新建公共目录
(D:\phpStudy\PHPTutorial\WWW\laravel\resources\views)
新建 layout目录
2)新建后台公共文件
admin.blade.php
3) 打开后台公共文件
将每一个页面不一样的部分用 @yield('title')
占位,一个页面可以有多个占位,用名字区分。
4)普通页面中该如何书写
① 继承公共的模板页面
@extends('layout.admin')
② 修改内容区域
@section('title', '云知梦后台管理系统');@section('main')<div class="col-md-10"><div class="jumbotron"><img src="/admins/img/4.jpg" height="310px" width="100%"><h2>联想 后台管理系统</h2><p>开发者:XXX</p></div>
</div>@endsection
11. 文件包含
将以下的代码写入到 baohan.blade.php
@include('public.footer')
实例:
- web.php
Route::get('baohan', "ShiTuController@baohan");
- app / Http / Controllers / ShiTuController.php
namespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests;class ShiTuController extends Controller
{public function baohan(){return view('baohan');}
}
- 在 public 下创建一个 homes文件夹 ,专门用户存放 前台的样式
- resources / views / baohan.blade.php
<!doctype>
<html><head><meta charset="utf-8"><title>文件包含</title></head><body><!-- 头部 -->@include('public.header')<!-- 内容 -->#code ...<!-- 底部 -->@include('public.footer')</body>
</html>
- 在 resources / views 下,创建一个 public文件夹, 存放头部和底部(由于头部和底部是一个网站公共的部分,因此其他页面只需要引入即可)
- resources / views / public / header.blade.php
<div class="am-container header"><ul class="message-l"><div class="topMessage"><div class="menu-hd"><a href="#" target="_top" class="h">亲,请登录</a><a href="#" target="_top">免费注册</a></div></div></ul><ul class="message-r"><div class="topMessage home"><div class="menu-hd"><a href="#" target="_top" class="h">商城首页</a> </div></div><div class="topMessage my-shangcheng"><div class="menu-hd MyShangcheng"><a href="#" target="_top"><i class="am-icon-user am-icon-fw"></i>个人中心 </a></div></div><div class="topMessage mini-cart"><div class="menu-hd"><a id="mc-menu-hd" href="#" target="_top"><i class="am-icon-shopping-cart am-icon-fw"></i><span>购物车</span><strong id="J_MiniCartNum" class="h">0</strong></a></div></div><div class="topMessage favorite"><div class="menu-hd"><a href="#" target="_top"><i class="am-icon-heart am-icon-fw"></i><span>收藏夹</span></a></div></div></ul>
</div>
- resources / views / public / footer.blade.php
<div class="footer "><div class="footer-hd "><p><a href="# ">恒望科技</a><b>|</b><a href="# ">商城首页</a><b>|</b><a href="# ">支付宝</a><b>|</b><a href="# ">物流</a></p></div><div class="footer-bd "><p><a href="# ">关于恒望</a><a href="# ">合作伙伴</a><a href="# ">联系我们</a><a href="# ">网站地图</a><em>© 2015-2025 Hengwang.com 版权所有</em></p></div>
</div>
【Laravel5.3 笔记整理八】Laravel视图(二)逻辑控制、模板布局、文件包含相关推荐
- 学习笔记之数据可视化(二)—— 页面布局(下)
续上一章 2.7 地图区域(.map) 2.7.1 实现步骤: 2.8 用户统计模块 2.8.1 布局: 2.8.2 柱状图 2.9 订单模块 2.9.1 订单区域布局 2.9.2 订单区域(orde ...
- 学习笔记之数据可视化(二)——页面布局(中)
续上一章 2.6 监控区域布局 2.6.1 布局结构解析: 2.6.2 样式描述: 2.6.3 HTML结构及CSS样式代码 2.6.3 ### 监控区域-效果 2.6.7 点位区域(point) 2 ...
- 学习笔记之数据可视化(二)——页面布局(上)
~续上一章 2. 项目页面布局 2.1 基础布局 2.1.1 PC端屏幕宽度适配设置 2.1.2 主体容器viewport背景图片 2.1.3 HTML结构 2.1.4 css样式代码 2.2 边框图 ...
- Deep Learning(深度学习)学习笔记整理系列之(二)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- 笔记整理英语篇(二) - 日常词汇
thumbs down 大拇指朝下//表示不赞成 glove 手套 limit 限制 raincoat 雨衣 remote 摇控器//例如空调遥控器 straw 吸管 flour 面粉 cereals ...
- Java开发笔记(八十六)通过缓冲区读写文件
前面介绍了利用文件写入器和文件读取器来读写文件,因为FileWriter与FileReader读写的数据以字符为单位,所以这种读写文件的方式被称作"字符流I/O",其中字母I代表输 ...
- java 文件缓冲区_Java开发笔记(八十六)通过缓冲区读写文件
前面介绍了利用文件写入器和文件读取器来读写文件,因为FileWriter与FileReader读写的数据以字符为单位,所以这种读写文件的方式被称作"字符流I/O",其中字母I代表输 ...
- 2、Spring Boot尚硅谷笔记整理高级篇-消息
1.Spring Boot尚硅谷笔记整理高级篇-缓存 2.Spring Boot尚硅谷笔记整理高级篇-消息 3.Spring Boot尚硅谷笔记整理高级篇-检索 4.Spring Boot尚硅谷笔记整 ...
- 【Android Studio】分类整理res/Layouts中的布局文件(创建子目录)
好吧,这个功能需求也是因为作为一个重度强迫症患者,非常想要把layouts中的文件分类整理下.否则看到一堆Activity和Fragment等文件混在一起特别难受.更重要的原因是,如果你的工程交给别人 ...
最新文章
- 26个音序的正确写法和占格_部编语文汉语拼音音序表,示范朗读+视频教学
- 教你实现Vscode的Markdown预览
- 单元测试——第六周作业
- python 模板引擎 对比_Python Web开发模板引擎优缺点总结
- 青龙羊毛——梅川衣服俩小孩(搬)
- cocos2d-x 输出debug信息
- perl学习:一些字符串操作
- 为了压榨CNN模型,这几年大家都干了什么
- 电气simulink常用模块_ADAS/AD控制器模块开发:产品构成要素及产品需求
- warning C4552: '' : operator has no effect; expected operator with side-effect
- Unity3D游戏开发之邂逅Unity3D
- 用matlab实现视频截图字幕部分的拼接
- nginx 启动、重启、关闭
- matlab画图函数基本使用(适合新手)
- 使用 CRF 做中文分词
- Codeforces--1311A--Duff and Weight Lifting
- 计算机不支持格式,显示视频格式不支持怎么处理,需要什么软件
- jpa :配置一对多 Error accessing field 错误
- 使用计算机数据采集的优点,什么是数据采集器
- 为什么科技巨头们纷纷更换 Logo?