Laravelblade模板语法初体验

本文详细介绍了Laravel框架中的Blade模板引擎,包括Blade模板的基本语法、模板继承机制、流程控制语句以及如何在模板中使用URL辅助函数。通过实例展示了如何在视图中输出变量、调用PHP代码、进行条件判断和循环操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Balde简介和Blade模板继承

(1)简介:Blade是Laravel提供的一个简单强大的模板引擎,Blade并不限制你在视图中(view)使用原生PHP代码;所有的Blade模板视图页面将被编译成缓存页面,模板视图更新,缓存页面也将重新编译。

(2)模板继承( extends、section、 yield、 parent)

@extends('layouts')

@section('header')
    @parent
    header
@stop

@section('sidebar')
    @parent
    sidebar
@stop

@section('content')
    @parent
    content
@stop

@section('footer')
    @parent
    footer
@stop


2. 基础语法

(1)模板中输出变量
(2)模板中调用PHP代码
(3)原样输出
(4)模板注释
(5)引入子视图

@section('content')
    
    <!-- 模板中输出变量 -->
    <p>我的姓名:{{$name}}</p>
    <p>我的年龄:{{$age}}</p>
    
    <!-- 模板中输出PHP代码 -->
    <p>当前时间为 {{date('Y-m-d H:m:i',time())}}</p>
    <p>现在的天气:{{ in_array('多云',array('多云','雨','晴')) ? '多云' : '雷阵雨' }}</p>
    <p>你的年龄多大呢? {{ var_dump($age) }}</p>
    
    <p>你有姓名吗?{{ isset($name) ? $name : ''}}</p>
    <p>你有姓名吗?{{ $name or ''}}</p>
    

    <!-- 转字符输出/原样输出 -->
    <p>@{{$name}}</p>

    <!--注释-->
    <p>{{-- 这是一段注释 --}}</p>

    <!-- 引入子视图 -->
    @include('section.section1_child',['component_name' => '哆啦A梦'])

@stop

3. 流程控制(if 、unless 、for 、foreach )

@if($age >= 20)
    大龄青年
@else
    青少年
@endif

@unless( $age >= 20 )
    青少年
@endunless

@for($i=0;$i<10;$i++)
    {{$i}} {{--  0 1 2 3 4 5 6 7 8 9 --}}
@endfor

@foreach($arr as $person)
   {{ $person}} {{--  小明 小花 小强 小颖 --}}
@endforeach

4. 模板中的URL(url() 、 action() 、 route() )

//控制器
class SectionController extends Controller
{
    public function section1(){
        return view('section/section1',[
            'name' => 'xiaoYi',
            'age' => 23,
            'arr' => array('小明','小花','小强','小颖')
        ]);
    }

    public function url(){
        return 'current-url-page';
    }
}

//路由设置
Route::get('section/url',['as'=>'surl','uses' => 'SectionController@url']);

//模板内容
{{ url('section/url') }}
<p><a href="{{ url('section/url') }}">use url() go to otehr page</a></p>
<p><a href="{{ route('surl') }}">use route() go to otehr page</a></p>
<p><a href="{{ action('SectionController@url') }}">use action() go to otehr page</a></p>

//页面输出
/*
http://localhost/laravels/public/section/url
use url() go to otehr page
use route() go to otehr page
use action() go to otehr page
*/

5. 总结

  其blade模板语法类似于原生PHP的模板语法,在原生语法的基础上,做了有利于用户更加方便操作的优化。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我的小英短

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值