視圖文件位置
位於:resources/views
視圖命名規範與渲染
- 小寫
- 後綴名是.blade.php,可以使用{{$title}}語法,因爲Laravel有一套blade模板引擎,也可以使用PHP原生語法。
- 也可以是.php結尾,但是不可以使用Laravel提供的{{$title}}語法顯示數據了。
- 兩個文件同時存在時,則.balde.php優先級最高,最先顯示。
視圖顯示方法
return view(視圖文件);
視圖文件除了可以test/view1
這樣寫之外,還可以這樣寫:test.view1;
web.php路由配置
Route::get('view/test1',function() {
return view('test/view1');
});
變量分配
web.php路由配置
Route::get('view/test1',function() {
$date = date('Y-m-d H:i:s',time());
$a = 12;
return view('test/view1',['date' => $date, 'a' => 12]);
// 還可以這麼寫:
// return view('test/view1',compact('date','a'));
});
view1.blade.php
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
{{$date}}
</body>
</html>
模板的循環與分支標籤
foreach
@foreach($variable as $key => $value)
// 循環體
@endforeach
if
@if()
@elseif()
@else
@endif
模板繼承
一般是用於做有公共部分的頁面
配置路由
Route::get('view/test2',function() {
return view('test/child');
});
編寫父級頁面 parent.blade.php
- @yield(id)
在父級頁面中的佔位
<h1>我是頭部</h1>
<!-- 可變區域 B -->
@yield('abc')
<!-- 可變區域 E -->
<h1>我是尾部</h1>
編寫子級頁面 child.blade.php
因爲頭部和尾部父級頁面已經擁有,所以子級頁面可以不用在編寫。
@extends('test/parent')
@section('abc')
<div>
xiaoLing is a good boy!!!
</div>
@endsection
模板包含
@include(模板文件名)