Bladeテンプレートが優先
Viewファイルにindex.phpとindex.blade.phpがあった場合、Bladeテンプレートのindex.blade.phpが優先的に適用される。
return view('index'); // index.blade.php >> index.php
エスケープ
Bladeの{{ }}文は自動的にPHPのhtmlentities関数を通してXSS攻撃を防ぐ。
エスケープしないで変数を表示
{!! $name !!}
三項演算子の短縮形
{{ isset($name) ? $name : 'Default' }}
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
{{ $name or 'Default' }}
ifディレクティブ
@if (条件)
// 内容
@elseif(条件)
// 内容
@else
// 内容
@endif
よく使うif比較の簡略系
@unless if(!condition) と同等
@unless(condition)
//
@endunless
@empty(condition) == if(empty(condition))
@empty() @endempty
@isset(condition) == if(isset(condition))
@isset() @endisset
繰り返し
@for ($i = 0; $i < 10; $i++)
現在の値は: {{ $i }}
// @continue
// @break
@endfor
@foreach ($users as $user)
これは {{ $user->id }} ユーザです。
@endforeach
@forelse ($users as $user)
@forelseは値をすべて取り出し終えて、取り出せなくなったときに@emptyにある処理を実行して繰り返しを終える。
