ホームページ > バックエンド開発 > PHPチュートリアル > Laravel のブレード テンプレート エンジンで HTML を安全に表示するにはどうすればよいですか?

Laravel のブレード テンプレート エンジンで HTML を安全に表示するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-10 08:17:09
オリジナル
245 人が閲覧しました

How Can I Safely Display HTML in Laravel's Blade Templating Engine?

Laravel で Blade を使用して HTML を安全に表示する

Laravel では、生の HTML コードを表示すると、セキュリティ上の懸念や予期しない出力が発生する可能性があります。これが、Laravel のデフォルトのテンプレート エンジンである Blade が HTML 文字を自動的にエスケープする理由です。ただし、特定のシナリオでは、生の HTML を表示する必要がある場合があります。

問題: {{ $text }} を使用して HTML コードを含む文字列を表示すると、Blade は代わりに文字列をエスケープします。

解決策: Blade で HTML を安全に表示するには、{!! $text !!}。この構文は、Blade に文字列を生の HTML としてレンダリングするように強制します。

例:

$text = '<p><strong>Lorem</strong> ipsum dolor <img src="images/test.jpg"></p>';
ログイン後にコピー

HTML を正しく表示するには:

{!! $text !!}
ログイン後にコピー

データのエスケープ:

覚えておいてくださいそれは { を使用します!! $text !!} は、クロスサイト スクリプティング攻撃から保護するために不可欠な HTML エスケープを無効にします。したがって、レンダリングする HTML は必ず {!! を通じてレンダリングしてください。 $text !!} (データベース クエリやユーザー入力からフェッチされたデータなど) はサニタイズされ、セキュリティが検証されます。

以上がLaravel のブレード テンプレート エンジンで HTML を安全に表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート