当前位置: 首页 > wzjs >正文

2015做微网站多少钱北京搜索引擎推广公司

2015做微网站多少钱,北京搜索引擎推广公司,中英双文网站怎么做,网站建设需求分析的功能介绍 Blade 是 Laravel 的默认模板引擎,Blade 模板文件使用.blade.php 作为文件扩展名,被存放在resources/views目录中, Blade 模板的常见特性和语法: 1.输出变量: 双花括号 {{ $variable }} 来输出变量的值。eg.{…

介绍

Blade 是 Laravel 的默认模板引擎,Blade 模板文件使用.blade.php 作为文件扩展名,被存放在resources/views目录中,

Blade 模板的常见特性和语法:

1.输出变量

双花括号 {{ $variable }} 来输出变量的值。eg.{{ $name }} 将输出名为 $name 的变量的值。

注意:在 Laravel 的 Blade 模板引擎中,{{ }} 用于输出 PHP 变量并自动进行 HTML 转义,但是一些前端框架如Vue.js、Angular等也使用 {{ }} 作为模板语法来绑定 JavaScript 变量,Blade 会尝试解析这些 {{ }},从而导致错误或意外的行为。所以在 Blade 模板中使用 @ 前缀来跳过 {{ }} 的解析。这样,Blade 会忽略这些带 @ 前缀的 {{ }},并将其原样输出,以便前端框架(如 Vue.js)能够正确解析。

// Blade 引擎会将其编译为对应的 PHP 代码
{{ $phpData }}
// Blade 引擎编译时会移除 @,保留 {{ $vueData }} 结构
@{{ $vueData }}

2.原始输出

单花括号 {!! $variable !!} 来原样输出变量的值,包括其中的 HTML 代码,因为它不会对内容进行转义

场景举例:在表单通过富文本编辑器编辑后提交的表单数据内容通常包含 HTML 标签,就需要直接渲染,否则浏览器会将这些内容显示为普通文本,而不是渲染为 HTML;

这样{!! $variable !!}编译后的代码就是 <?php echo $variable; ?>

‘HTML’转义是一种安全机制,用于将特殊字符转换为 HTML 实体,以防止这些字符被浏览器解析为 HTML 或 JavaScript 代码,来防止XSS攻击,下面是一些常见转义字符

字符描述HTML 实体
<小于号(开始标签)&lt;
>大于号(结束标签)&gt;
"双引号&quot;
'单引号&apos;&#39;
&和号(特殊字符前缀)&amp;
空格&nbsp;

3.注释

使用 {{--注释--}} 来添加 Blade 注释。这些注释将在渲染时被忽略,不会出现在生成的 HTML 中。

4.Blade 常用指令

(1)If 语句:用 @if ,@elseif ,@else和@endif指令构造 if 语句。这些指令功能与它们所对应的 PHP 语句完全一致

@if (count($records) === 1)// 有一条记录
@elseif (count($records) > 1)// 有多条记录
@else// 没有记录
@endif

为了方便, Blade 还提供了一个 @unless 指令(相当于 @if (! Auth::check()) @endif):

@unless (Auth::check())// 还没有登录
@endunless

双冒号 :: 是 PHP 中的范围解析操作符用于访问类的静态成员或常量。使用类名::静态方法名()/ 静态属性名/常量名

(2)循环语句,这些语句的功能和它们所对应的 PHP 语法一致:

@for ($i = 0; $i < 10; $i++)The current value is {{ $i }}
@endfor
//$i = 0初始化变量;$i < 10判断变量是否小于10;小于10则$i++变量循环加1;(最后输出10行)@foreach ($users as $user)<p>This is user {{ $user->id }}</p>
@endforeach
//$users:要遍历的数组或集合。$user:当前遍历的元素($users有几个输出几行)@forelse ($users as $user)<li>{{ $user->name }}</li>
@empty<p>No users</p>
@endforelse
//foreach的进阶版,就是多了个空输出@while (true)<p>I'm looping forever.</p>
@endwhile
//只要是ture,无限循环

在遍历 foreach 循环时,您可以使用 循环变量 去获取有关循环的有价值的信息,例如,您处于循环的第一个迭代亦或是处于最后一个迭代。

这是比较常用的命令,想了解其他请参考Blade 模板 | Laravel中文文档 

5.包含视图

使用 @include('view.name') 来包含其他视图。您可以将常用的部分(如页眉、页脚、导航栏等)定义为独立的视图,并在需要时包含它们。

传递数据给被包含的视图:

@include('partials.header', ['title' => '欢迎来到我的网站'])

包含视图的嵌套:同理啦

<header><h1>{{ $title }}</h1>@include('partials.nav')
</header>

视图名称:要包含的视图文件路径,不需要加 .blade.php 后缀。

数据数组(可选):传递给被包含视图的数据。

6.表单处理

使用 @csrf 指令来生成 CSRF 令牌,以防止跨站请求伪造。使用 @method('PUT')@method('DELETE') 等指令来指定表单的 HTTP 方法。

(1)@csrf:在表单中使用 @csrf 指令,Blade 会自动生成一个隐藏的<input> 字段,包含 CSRF 令牌,Laravel 会自动验证该令牌,确保请求是合法的。

eg:

<form action="/submit" method="POST">@csrf<input type="text" name="name"><button type="submit">提交</button>
</form>
//应用

<form action="/submit" method="POST"><input type="hidden" name="_token" value="随机生成的 CSRF 令牌"><input type="text" name="name"><button type="submit">提交</button>
</form>
//生成的html

(2)@method:因为HTML 表单仅支持 GETPOST 方法,所以要使用其他 HTTP 方法(如 PUTPATCHDELETE 等),需要通过 @method 指令伪造方法。在表单中使用 @method 指令,Blade 会生成一个隐藏的 _method 字段,Laravel 会根据该字段的值处理请求。

eg:

<form action="/update/1" method="POST">@csrf@method('PUT')<input type="text" name="name" value="John"><button type="submit">更新</button>
</form>
//方法

<form action="/update/1" method="POST"><input type="hidden" name="_token" value="随机生成的 CSRF 令牌"><input type="hidden" name="_method" value="PUT"><input type="text" name="name" value="John"><button type="submit">更新</button>
</form>
//生成的html页面

7.布局

使用 <x-app-layout> 标签来定义应用程序的布局。默认情况下,它会渲染 app/View/Components/AppLayout.php 文件,可以根据需要自定义布局组件。举个例子吧:

{{ $slot }} 是一个特殊的变量,它会被替换为 <x-app-layout> 标签内部的内容。

<x-app-layout><h1>Welcome to my website!</h1><p>This is the main content of the page.</p>
</x-app-layout>

上面的<h1><p> 标签的内容会被插入到 layouts.app 视图的 {{ $slot }} 位置。

8.模板继承

创建一个基础布局模板(布局模板通常放在 resources/views/layouts 目录下),并使用 @yield 指令来定义可被子视图替换的内容块。使用 @extends@section@yield 来实现模板继承。

从ai上找了简单的代码示例,可以非常清晰地了解他们的用法

1. 创建布局模板

创建一个名为 app.blade.php 的布局模板:

<!DOCTYPE html>
<html>
<head><title>@yield('title', '默认标题')</title>
</head>
<body><header><h1>网站标题</h1></header><main>@yield('content')</main><footer><p>版权所有 &copy; 2023</p></footer>
</body>
</html>
  • @yield('title', '默认标题'):定义一个可替换的区域,名称为 title,并提供一个默认值(如果子模板没有填充 title,则显示 默认标题)。

  • @yield('content'):定义另一个可替换的区域,名称为 content

2. 创建子模板

子模板继承布局模板,并填充或覆盖布局模板中的可替换区域。例如,创建一个名为 home.blade.php 的子模板:

@extends('layouts.app')@section('title', '首页')@section('content')<p>这是首页的内容。</p>
@endsection
  • @extends('layouts.app'):指定子模板继承 layouts/app.blade.php 布局模板。

  • @section('title', '首页'):填充布局模板中的 title 区域,内容为 首页

  • @section('content'):填充布局模板中的 content 区域,内容为 <p>这是首页的内容。</p>

3. 渲染子模板

在控制器中渲染子模板时,Blade 会自动将子模板的内容插入到布局模板的相应位置:

// 在控制器中
public function index()
{return view('home');
}

4. 最终渲染结果

Blade 会将子模板的内容插入到布局模板中,生成最终的 HTML:

<!DOCTYPE html>
<html>
<head><title>首页</title>
</head>
<body><header><h1>网站标题</h1></header><main><p>这是首页的内容。</p></main><footer><p>版权所有 &copy; 2023</p></footer>
</body>
</html>

emmmm这可能考的不多,我也没找到啥题型。。。。。





http://www.dtcms.com/wzjs/527903.html

相关文章:

  • 上海注册子公司流程和费用标准seo上海公司
  • 高级网站开发工程师工资seo资料站
  • python做后台网站的多吗有什么软件可以推广
  • 石家庄网页设计公司有哪些百度seo关键词优化
  • 代理网页游戏多少钱晋城网站seo
  • 你做网站群好朋友的作文上海网站推广公司
  • 做旅游网站有前途吗舆情分析报告模板
  • 公司网站的宣传栏怎么做成人教育培训机构十大排名
  • 做义齿雕刻设备的网站媒体发布平台
  • 实用的网站今日国际新闻
  • 专业建网站设计公司seo排名技巧
  • 昌吉建设局网站做游戏推广一个月能拿多少钱
  • 付网站建设费seo辅助工具
  • 郑州网站建设费用seo 推广怎么做
  • 数码产品简约大气网站设计韩国日本比分
  • 怎么介绍自己做的企业网站页面真正免费的网站建站平台运营
  • 网站备案号如何查询密码网站开发的公司
  • 做酒的网站磁力棒
  • 宝鸡做网站电话百度竞价排名收费
  • 网站建设公司怎么写宣传语台州百度关键词排名
  • 网站里面怎么做数字滚动郑州seo优化外包顾问阿亮
  • 网站空间优惠上海抖音推广
  • 高校网站建设百度推广怎么操作
  • ipv6网站开发市场营销毕业论文5000字
  • readme.md做网站培训方案
  • 电信开放81端口怎样做网站市场营销策划案例经典大全
  • 医院网站专题用ps怎么做营销策划方案ppt
  • 长沙网站制作有哪些公司百度推广合作
  • 泰安 网站建设公司肇庆网站建设制作
  • 上海专业网站制作公司网络推广有效果吗