【PHP】Laravel_viewのテンプレート継承
はじめに
Laravelで使用されるBladeファイルと テンプレートの継承方法について学んだので記載する。
参照ドキュメント https://readouble.com/laravel/7.x/ja/blade.html
環境
Laravel7.3
Blade形式について
BladeはLaravelのテンプレート形式の一種で拡張子はblade.phpです。 特徴としては基本はHTMLで記述しますが、PHPのコードを記述できることが特徴です。
<!DOCTYPE HTML> <html lang="ja"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="csrf-token" content="{{ csrf_token() }}"> <title>test</title> </head> <body> @include('parts.header') @yield('content') </body> </html>
テンプレート継承について
以下の記述によって、部分テンプレートとして取り込んでいる。
ここでは(resources/views)/parts/header.blade.phpを取り込んでいる
@include('parts.header')
レイアウトの子ビューを定義するにはビューに以下のように記載する。
@extends('layouts.common') # 継承する親ビューを指定する。ここでは/layouts/common.blade.phpを示す @section('content') # @section~@endsectionまで@yield('content')に挿入される @endsection