ホームページ >バックエンド開発 >PHPチュートリアル >Laravel Bladeでエスケープせずに生のHTMLを表示する方法?

Laravel Bladeでエスケープせずに生のHTMLを表示する方法?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-25 13:06:09703ブラウズ

How to Display Raw HTML in Laravel Blade Without Escaping?

エスケープせずに Blade で HTML を表示する

Laravel では、Blade を使用してビュー内で HTML を表示する場合、HTML タグをエスケープすることが不可欠です。悪意のあるコードの実行を防ぎます。デフォルトでは、Blade はセキュリティを確保するために HTML を自動的にエスケープします。

ただし、特定のシナリオでは、エスケープせずに HTML を表示する必要がある場合があります。たとえば、次のような文字列があるとします。

$text = '<p><strong>Lorem</strong> ipsum dolor <img src=&quot;images/test.jpg&quot;></p>'

{{$text}} を備えた Blade を使用してこの HTML を表示しようとすると、出力はレンダリングされた HTML ではなく生の HTML テキストであることがわかります。 。これは、Blade が HTML タグをエスケープし、実際の HTML として解釈されないようにするためです。

エスケープせずに HTML を表示するには、次のようにする必要があります。

{!! $text !!}

{!! !!} を使用すると、Blade に HTML をエスケープしないように明示的に指示することになり、HTML は意図したとおりにレンダリングされます。 {!! を使用することを忘れないでください。 !!} 潜在的なセキュリティ脆弱性を防ぐために、必要な場合にのみ、慎重に実行してください。

以上がLaravel Bladeでエスケープせずに生のHTMLを表示する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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