视图

视图文件的命名与渲染

1.文件名习惯小写(建议小写)

2.文件名的后缀是 balde.php (因为laravel里面有一套模板引擎就是使用blade,可以直接使用标签语法 {{$title}} ,也可以使用原生的php语法显示数据)。

3.需要注意的是也可以使用 .php 结尾,但是这样的话就不能使用laravel提供的标签 {{$title}} 语法显示数据,只能使用原生的语法 <?php echo $title?> 显示数据。两个视图文件同时存在,则blade.php后缀的优先显示

案例:编写一路由地址,调用控制器的test3方法战术,展示视图test3文件(创建2个)

变量分配与展示

语法

//第一种方法
view(模板文件名称,数组);			//数组就是需要分配的变量集合,是一个键值数组
//第二种方法
view(模板文件名称)->with(数组);
//第三种方法
view(模板文件名称)->with(名称,值)->with(名称,值);

使用view方法渲染一个视图后,在blade.php的视图文件中,模板输出变量使用{{$变量名}},变量名就是分配过来数组的键。

扩展:compact函数使用(传参)

compact函数,是PHP内置函数跟laravel框架没有任何关系,主要作用是用于打包数组的。

//语法格式
compact('变量名''变量名')
    return('home.test.test3',compact( date,day ) );

模板中直接使用函数

回顾:在smarty模板引擎中存在一个特殊的符号,“|” ,名称称之为变量修饰符。作用就是在视图中解释变量(使用函数去处理变量)。

在laravel中,视图调用函数其语法基本与js、PHP的语法一致,只不过左右包含大括号

{{函数名(参数1,参数2.。。)}}

案例:在数据库中一般存储时间都是以时间戳去存储的,但是在页面上展示的时候不适合使用时间戳了。需要在展示的时候再对其进行格式话处理,如需在视图中进行对其格式化则如何写?(100%)

循环与分支语法标签【重点】

//在视图里面遍历数据【重点】
//在laravel中模板中循环输出数据,则需要遵循语法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FvagAXLN-1586602608182)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324102159717.png)]

案例:使用循环标签的语法,在视图中输出数据

(1)定义路由

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y0nvLgPQ-1586602608183)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324102556053.png)]

(2)定义test4方法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m2QZoZxe-1586602608183)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324102825632.png)]

(3)创建视图文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z1hxLYhU-1586602608184)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324104034125.png)]

//在视图中可以使用if判断
//if语法在模板引擎中的写法:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-orNTT0vC-1586602608184)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324104627332.png)]

案例:要求在PHP代码中(控制器的方法)动态输出今天的星期数字(1-7),将数字传递给视图,显示出今天是星期几,如假设传递的数字是7,则页面中要输出 “星期天” 【将数字转化成汉字】

1.控制器代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F1GhzhXP-1586602608184)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324105835020.png)]

2.在视图中进行相关的判断

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3S88ebnn-1586602608185)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324110358670.png)]

模板的继承/包含【理解】

继承不仅仅在PHP类中存在,在视图中同样存在,一般用于做公共部分的页面

案例:编写父级页面,在编写一个子页面(相当于PHP中的两个)

编写父级页面

//语法
@yieId('名字')				//在父级页面中的占位
    

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UP3WPk50-1586602608185)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324111923840.png)]

2.编写子级页面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y560lgvi-1586602608185)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324112638621.png)]

//继承语法
//字模版中按以下语法书写
@extends('需要继承的模板文件名');
//通过section标签绑定区块/部件到父级页面,区块名称就是父级页面yieId标签的参数名。
@section('区块名称');
//代码
@endsction

外部静态文件引入方式(了解)

在写页面时肯定会引入相关的外部文件(js、css、image),则会设计到路径的问题。

以下面的app.css文件为例,看如何引入改css文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HHO3BPFM-1586602608186)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324114907818.png)]

以往的引入方式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wP8dG1E5-1586602608186)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324115132560.png)]

laravel中封装了一个方法asset方法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1Jww27GZ-1586602608186)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200324115530400.png)]

asset方法中的参数可以是多级目录也可以是单机目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值