ホームページ >バックエンド開発 >PHPチュートリアル >Laravel Blade でエスケープせずに HTML をレンダリングするにはどうすればよいですか?

Laravel Blade でエスケープせずに HTML をレンダリングするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-10 02:37:09970ブラウズ

How Can I Render HTML in Laravel Blade Without Escaping?

Blade Escape の問題: HTML の表示

Laravel の Blade ビュー内で HTML をレンダリングしようとすると、HTML コードが解析されずに生のまま表示されます。これは、Blade がエスケープと呼ばれるセキュリティ機能を採用しており、ビュー内で悪意のあるコードの実行を防止するためです。

Blade 内で HTML コンテンツを表示するには、次の方法を使用できます:

{!! $text !!}

感嘆符付きの二重中括弧を使用すると、指定された文字列のエスケープを無効にするように Blade に指示します。これにより、HTML コードを正しくレンダリングできます。

上記のアプローチとは対照的に、標準の二重中括弧構文を使用すると、

{{ $text }}

文字列は自動的にエスケープされ、次のようになります。意図したレンダリング出力ではなく、生の HTML コードが表示されます。

注: PHP の echo() 関数はエスケープを実行しないため、特定のシナリオでは HTML が正しく表示される場合があります。ただし、HTML コンテンツを一貫して安全に処理するには、Blade 固有の構文を使用することをお勧めします。

以上がLaravel Blade でエスケープせずに HTML をレンダリングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。