Maison > développement back-end > tutoriel php > Comment puis-je afficher du HTML en toute sécurité dans le moteur de modèles Blade de Laravel ?

Comment puis-je afficher du HTML en toute sécurité dans le moteur de modèles Blade de Laravel ?

Susan Sarandon
Libérer: 2024-12-10 08:17:09
original
242 Les gens l'ont consulté

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

Afficher du HTML en toute sécurité dans Laravel avec Blade

Dans Laravel, l'affichage de code HTML brut peut entraîner des problèmes de sécurité et des résultats inattendus. C'est pourquoi Blade, le moteur de création de modèles par défaut dans Laravel, échappe automatiquement les caractères HTML. Cependant, dans certains scénarios, vous devrez peut-être afficher du HTML brut.

Problème : Lorsque vous utilisez {{ $text }} pour afficher une chaîne contenant du code HTML, Blade échappe la chaîne au lieu de le rendre au format HTML.

Solution : Pour afficher du HTML en toute sécurité avec Blade, utilisez {!! $texte !!}. Cette syntaxe oblige Blade à restituer la chaîne au format HTML brut.

Exemple :

$text = '<p><strong>Lorem</strong> ipsum dolor <img src="images/test.jpg"></p>';
Copier après la connexion

Pour afficher le HTML correctement :

{!! $text !!}
Copier après la connexion

ÉCHAPPEMENT DE DONNÉES :

N'oubliez pas qu'en utilisant {!! $text !!} désactive l'échappement HTML, ce qui est essentiel pour se protéger contre les attaques de scripts intersites. Par conséquent, assurez-vous toujours que tout code HTML que vous affichez via {!! $text !!}, telles que les données extraites des requêtes de base de données ou des entrées de l'utilisateur, sont nettoyées et validées pour des raisons de sécurité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal