環境
- macOS Ventura 13.6
- PHP(8.1.27)
- Laravel(9.43.0)
- Node.js(18.17.1)
- Visual Studio Code
コード
bladeテンプレート内で以下のコードを入力すると改行が出力されます。
(ユーザーが送信した情報をvalueという変数で受け取り、textというデータを取得することにします。)
{!! nl2br(e($value->text)) !!}
解説
e関数
<,>,&
などの特殊文字列を安全なエンティに変換するための関数です。
今回の場合
{!! nl2br($value->text) !!}
でも動きますが、セキュリティリスクの観点から記述する必要があります。
nl2br関数
PHP標準の関数で、改行文字\n
を改行タグ<br>
に変換するための関数です。
{{ !! !! }}
Bladeテンプレートの記法でHTMLをエスケープせず、そのまま出力することができます。