Learn or Die

生涯勉強。Macです。

{{ }}によるデータ表示

Bladeに渡された変数は、{{ }}で囲うことで、その値を表示できる。
また、{{ }}の中ではPHPの処理を書くこともできる。

Controller▼

<?php
return view('articles.index', ['articles' => 'Hanako']);

View▼

<div class="name">
   {{ $name }}
</div>

Bladeの{{ }}記法はXSS攻撃を防ぐため、自動的にPHPのhtmlspecialchars関数が通される。

XSS攻撃とは

クロスサイトスクリプティング(XSS)攻撃。
脆弱性のあるWebアプリケーションにスクリプトなどを仕掛け、個人情報などを盗むなどの被害をもたらす攻撃。

XSS攻撃についての参考サイト

www.kagoya.jp

エスケープしたくないとき

デフォルトで{{ }}文はhtmlspecialchars関数を通すので、エスケープしたくない場合は以下の構文を使う。

<div class="name">
   {!! $name !!}
</div>

参考サイト

readouble.com