ホームページ >バックエンド開発 >PHPチュートリアル >LaravelにおけるBladeテンプレートの使い方を詳しく解説

LaravelにおけるBladeテンプレートの使い方を詳しく解説

*文
*文オリジナル
2018-01-03 16:38:381725ブラウズ

Blade は、laravel が提供するシンプルで強力なテンプレート エンジンです。次の記事では、Laravel フレームワークでの Blade テンプレートの使用に関する関連情報を主に紹介しており、これは非常に重要です。勉強や仕事に参考になる学習価値があるので、必要な友達は以下をご覧ください。お役に立てれば幸いです。

はじめに

Blade は、他の一般的な PHP テンプレート エンジンのように、ビューでのネイティブ PHP コードの使用を制限しません。実際、Blade ビューはネイティブ PHP コードにコンパイルされ、キャッシュされます。 Blade ビューが変更されるとキャッシュも変更されます。これは、Blade がアプリケーションにコンパイルの負担を追加しないことを意味します。ブレード ビュー ファイルは .blade.php 接尾辞を使用し、通常は resource/views ディレクトリに保存されます。

1. 継承、フラグメント、プレースホルダー、コンポーネント、スロット

1.1 継承

1.1.1 親テンプレートの定義

Laravel/resources/views/base.blade.php

1.1.2 子テンプレートの継承

パス: Laravel/リソース/ views/child.blade.php

@extends('base')

1.2 フラグメント

1.2.1 親テンプレート定義フラグメント

@section('part')
// 中间内容即使一个片段
@show

1.2.2 子テンプレートフィルフラグメント

@section('part')

フラグメントフィルコンテンツ

@endsection

1.3 プレースホルダー

1.3.1 親テンプレートのプレースホルダー:

@yield('title')

1.3.2 子テンプレートの塗りつぶしプレースホルダー

最初の塗りつぶし (テキスト):

@section('title' , '填充的文本占位')

2 番目の塗りつぶし (テキストまたは HTML)

@section('title')

塗りつぶされたプレースホルダー ビット

@endsection

1.4 コンポーネント、スロット

1.4.1 コンポーネントを定義する

パス: Laravel/resources/views/component.blade.php

<p class=&#39;component&#39;>
 <!-- $title,$content 变量实际上就是预定义的插槽 -->
 <p class=&#39;title&#39;>{{ $title }}</p>
 <p class=&#39;content&#39;>{{ $content }}</p>
</p>

1.4.2 コンポーネントを使用する

パス: Laravel/resources/views/test.blade.php

@component(&#39;component&#39;)
 @slot(&#39;title&#39;)
  组件标题
 @endsolt
 
 @slot(&#39;content&#39;)
  组件内容
 @endslot
@endcomponent

2. データ表示

2.1 エスケープされた出力

{{ $name }}

2.2 エスケープされていない出力

{!! $name !!}

2.3 オリジナル形式の出力

最初のタイプ(少量に適しています):

@{{ name }}

2 番目のタイプ(大きい量):

@verbatim
{{ name }}
{{ sex }}
{{ age }}
@endverbatim

3. プロセス制御

3.1 for

注:

  • $ ループ変数はありません

  • いいえ@empty

  • は持っています@break

  • には@Continue

  • @for ($i = 0; $i < 10; ++$i)
     {{ $i }} <br />
    @endfor

3.2 foreach

があります注:

  • には$loop変数があります

  • @emptyはありません

  • @breakあります

  • @Continue

  • @foreach ($data as $k => $v)
     {{ $k }} <br />
    @endforeach

3.3 forelse

があります注:

  • には$loop変数があります

  • @break を持つ @empty

  • が必要です

  • @ continue

  • @foreach ($data as $k => $v)
     {{ $k }} <br />
    @empty
配列にはデータがありません

4. ネイティブ PHP を使用します

@endforeach

5.
注意

含まれるサブビューは、親ビューによって定義されたすべての変数を参照できます。

  • サブビューに追加データを渡すことができます

  • 親ビューparent.blade.phpを定義し、サブビューchild.blade.phpを含めて、追加データを渡します

    @php 
    echo "使用原生 PHP";
    @endphp
関連する推奨事項:


Laravelのミドルウェアがどのように実装されているかを見てみましょう

Laravelの最適化分割ルーティングファイル

laravelのAPPインターフェイス(API)の作成

以上がLaravelにおけるBladeテンプレートの使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。