2018年04月6日网站服务器迁移完成……

Blade模板引擎

php 苏 demo 1386℃ 0评论
  1. 打印变量或者默认值,这个语法会自动转义变量内容中的html标记,使得html标签原样输出
    Welcome, {{ $name or 'California' }}
  2. 打印变量原始内容,不进行转义的用法
    {!! 'My list <script>alert("spam spam spam!")</script>' !!}
  3. 循环
    普通循环
    @foreach ($lists as $list)
    <li>{{ $list }}</li>
    @endforeach
    处理变量为空的情况
    @forelse ($lists as $list)
    <li>{{ $list }}</li>
    @empty
    <li>You don't have any lists saved.</li>
    @endforelse
  4. if判断
    @if (count($lists) > 1)
    @elseif ()
    @else
    @endif
  5. 在模板中使用以下语法创建内容的占位符
    @yield('content')
  6. 在视图中使用以下语法使用模板
    @extends('layouts.master')
  7. 使用以下语法填充占位符内容
    @section('content')
    content
    @endsection
  8. 使用以下语法引用子php文件
    @include('partial')
    @include('partials.row', ['link' => $link]),传递参数给子文件
  9. 如何在子视图中决定是否用一些公用内容
    @section('advertisement')
    parent content
    @show
    以上语法定义的advertisement section并不会直接在子视图中展示,@show相当于@endsection @yield(‘advertisement’)
    @section('advertisement')
    @parent
    child content
    @endsection
    只有在这里使用了@parent,模板中在advertisement中定义的内容才会显示在子视图中
    10. 在模板中引用css,js等的语法
    {!! HTML::style('css/app.min.css') !!}
    {!! HTML::script('javascript/jquery-1.10.1.min.js') !!}
    {!! HTML::script('javascript/bootstrap.min.js') !!}
    {!! HTML::image('images/logo.png', 'TODOParrot logo') !!}
    这里需要注意的是,如果写标准的html标签,路径中需要在前面加一个’/’符号
    <script src="/javascript/jquery-1.10.1.min.js"></script>
    要使用以上语法需要安装HTML包
    11. 安装HTML包
    composer require illuminate/html
    在config/app.php中配置provider和alias
    Illuminate\Html\HtmlServiceProvider::class provider配置
    'Form' => Illuminate\Html\FormFacade::class, Facade配置
打赏

转载请注明:苏demo的别样人生 » Blade模板引擎

   如果本篇文章对您有帮助,欢迎向博主进行赞助,赞助时请写上您的用户名。
支付宝直接捐助帐号oracle_lee@qq.com 感谢支持!
喜欢 (1)or分享 (0)
发表我的评论
取消评论
表情