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

*文
リリース: 2023-03-19 08:40:02
オリジナル
1674 人が閲覧しました

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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!