Blog スタッフブログ

Laravel システム開発

[Laravel]Bladeでの文字列をエスケープしながら改行する

システム開発担当のTFです。

やり方

  • e 関数を使いhtmlエスケープする
  • nl2br 関数を使い、改行コードの前に <br />タグを挿入する
  • それをhtmlエスケープせずに表示する

メモ

{{ $value }} だと、htmlエスケープされる
nl2br を効かす為に、{!! nl2br($value) !!} を使う
それだけだと、$value の中にhtmlタグがあると、タグが解釈されるため、
nl2br をかける前に、htmlエスケープを行う

textareaでの改行入力されるフォームの入力確認等で使う

サンプル

{{-- $valueをエスケープしながら、改行表示 --}}
{!! nl2br( e($value) ) !!}