Laravel学习记录(六):Blade模板

简单来说,Laravel的Blade前端模板是一种前端页面的写法,像是模板可以继承,一定程度上使用PHP代码等。说实话我对前端不太懂,基本上写不出来什么漂亮的页面,看来以后还是得学习学习相关的知识。

返回页面

使用全局函数view()可以在路由和控制器中返回页面,第二个参数可以向视图中返回参数,用的是一个数组。而在视图中使用双层大括号套上PHP变量就可以让传入的变量获得解析显示。当然这种情况下的内容会被htmlspecialchars()自动转义以防止XSS攻击,要想直接显示未处理的内容,举个例子:我想直接把返回的网页html内容打到页面上,这个时候的Blade页面就只是当一个空白容器的作用,如果转义了原始内容是显示不出来的,所以可以直接使用{!! $value !!}来把原始的内容显示出来。

有些js框架也用到了花括号,这种情况下的可以在括号前面加上@来保证Blade引擎不会对相关的内容做修改。还有类似逻辑语法之类的,像是@if。

Blade指令

@auth,@endauth,@guest,@endguest,@production,@env

视图包含

使用@include可以包含其他视图。@includeWhen,@includeUnless

@includeWhen($boolean, 'view.name', ['status' => 'complete'])

@includeUnless($boolean, 'view.name', ['status' => 'complete'])