首页 > php框架 > Laravel > 正文

Laravel如何使用Blade模板引擎_Laravel Blade视图编写与模板继承

裘德小鎮的故事
发布: 2025-11-21 17:54:52
原创
314人浏览过
Blade是Laravel的模板引擎,使用@extends和@section实现模板继承,通过{{}}输出变量,支持@if、@foreach等指令,可高效构建清晰的视图结构。

laravel如何使用blade模板引擎_laravel blade视图编写与模板继承

Blade 是 Laravel 自带的轻量级模板引擎,它允许你使用简洁、优雅的语法编写视图,并支持模板继承、组件、条件语句和循环等特性。Blade 文件的扩展名为 .blade.php,会被 Laravel 编译成原生 PHP 代码并缓存,因此不会影响性能。

创建与渲染 Blade 视图

resources/views 目录下创建 Blade 文件,例如:home.blade.php

内容示例:

<!DOCTYPE html><br><html><br>    <head><br>        <title>首页</title><br>    </head><br>    <body><br>        <h1>欢迎来到 {{ $name }} 的网站</h1><br>    </body><br></html>
登录后复制

在控制器中使用 view() 函数渲染该视图:

public function index()<br>{<br>    return view('home', ['name' => 'Laravel']);<br>}
登录后复制

模板继承:使用 @extends 和 @section

Blade 的核心优势之一是模板继承,可以定义一个布局文件(layout),然后在其他页面中继承并填充特定区域。

步骤如下:

  • resources/views/layouts 下创建主布局文件,如 app.blade.php
  • 使用 @section 定义可替换的内容区块
  • 子页面使用 @extends 继承布局,并用 @section 填充内容

示例:主布局 app.blade.php

MagicStudio
MagicStudio

图片处理必备效率神器!为你的图片提供神奇魔法

MagicStudio 102
查看详情 MagicStudio

<!DOCTYPE html><br><html><br>    <head><br>        <title>@yield('title', '默认标题')</title><br>    </head><br>    <body><br>        <header><br>            <h1>我的网站</h1><br>            <nav><a href="/">首页</a> | <a href="/about">关于</a></nav><br>        </header><br><br>        <main><br>            @yield('content')<br>        </main><br><br>        <footer><br>            @section('footer')<br>                <p>版权所有 &copy; 2025</p><br>            @show<br>        </footer><br>    </body><br></html>
登录后复制

子页面继承布局,如 home.blade.php

@extends('layouts.app')<br><br>@section('title', '主页')<br><br>@section('content')<br>    <h2>这是首页内容</h2><br>    <p>欢迎访问!</p><br>@endsection<br><br>@section('footer')<br>    @parent<br>    <p>本页由 Blade 驱动</p><br>@endsection
登录后复制

说明:

  • @yield('title') 输出命名区块内容,可设置默认值
  • @section('footer')...@endsection 定义可覆盖或追加的内容
  • @parent 表示保留父模板中的内容并追加新内容

常用 Blade 指令

Blade 提供了许多便捷指令来简化视图逻辑:

  • @if / @else / @endif:条件判断
  • @foreach / @endforeach:循环输出数据
  • {{ $variable }}:显示变量(自动转义)
  • {!! $html !!}:输出原始 HTML(不转义,注意 XSS 风险)
  • @include('view.name'):包含其他视图
  • @auth / @guest:根据用户登录状态显示内容

示例:使用循环和条件

@if($posts)<br>    <ul><br>    @foreach($posts as $post)<br>        <li>{{ $post->title }}</li><br>    @endforeach<br>    </ul><br>@else<br>    <p>暂无文章</p><br>@endif
登录后复制

基本上就这些。掌握 Blade 的模板继承和常用语法后,就能高效构建结构清晰、易于维护的前端页面。

以上就是Laravel如何使用Blade模板引擎_Laravel Blade视图编写与模板继承的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号