浅谈Laravel模板实体转义带来的坑
作者:webbc 发布时间:2024-06-05 09:44:24
标签:Laravel,模板,转义
问题
最近在Laravel项目中用到了百度编辑器,插入到数据库我保存的是原始的html标签代码,没有进行实体转义。然后在修改的时候,需要读取到数据库中的数据,进行回显,这时候竟然在编辑器里面显示html标签代码<p>123</p>,这让我很尴尬,因为以前在tp框架中也是这样写的,但是没有问题。
搜索之路
在知道问题之后,我就开始找百度了,因为一开始的时候我并不知道是框架的原因,我以为是百度编辑器版本的原因,然后收到了许多答案,都是围绕着htmlentities和html_entity_decode这两个函数搞来搞去。我都有试过,但是都没有用,然后这个问题就放下了。
正确方法
第二天我起来,感觉这个问题一定要解决,然后就搜索了看了Laravel官网的api,然后扎到blade模板这一节,看到这个。
Blade {{ }} statements are automatically sent through PHP's htmlspecialchars function to prevent XSS attacks.
意思是:使用{{}}会自动使用php中的htmlspecialchars方法来转义成实体,然后输出。
显示未转义数据
Hello, {!! $name !!}.
然后试了一下,大功告成!
总结
虽然知识大家都懂,但是如果知识换一种方式来考验我们,我们可能一下子并不能滤清思绪,总的来说还是基础比较差,还得补补啊。
来源:https://blog.csdn.net/baochao95/article/details/71046324


猜你喜欢
- 我很想自己写一个这样的程序,不过wordpress是php的,我blog是ASP的,只好用ASP写代码了。经过一番折腾测试,终于让我的梦想变
- python画图时linestyle,color和loc参数的设置本人没有看过专门介绍matplotlib的书籍,所以一直以来对一些画图的风
- date() 获取日期,格式:2004-2-28 time() 获取时间,格式:22:24:59 now() 获取日期和时间 格式: 200
- 第一种import win32clipboardimport time#速度快 容易出错class niubi(): def lihai(s
- 假设红包金额为money,数量是num,并且红包金额money>=num*0.01原理如下,从1~money*100的数的集合中,随机
- 随机数我们都知道,就是计算机通过某种算法,“随机”的生成一个数字。很多编程语言都有内置的方法来生成随机数,那么 GoLang 中是怎样一种情
- 在之前的几篇文章中,介绍了业界中比较火爆的图片技术SVG(Scalable Vector Graphics),比如Iconfont(矢量图标
- PHP children() 函数实例查找 note 节点的子节点:<?php $note=<<<XML<no
- MySQL之前有一个查询缓存Query Cache,从8.0开始,不再使用这个查询缓存,那么放弃它的原因是什么呢?在这一篇里将为您介绍。My
- 本文介绍了python 支持向量机非线性回归SVR模型,废话不多说,具体如下:import numpy as npimport matplo
- 时间object转换datetime实例首先说一下:1/17/07 has the format “%m/%d/%y&a
- Hough圆变换的原理很多博客都已经说得非常清楚了,但是手动实现的比较少,所以本文直接贴上手动实现的代码。这里使用的图片是一堆硬币:&nbs
- 笔者小白在收集印刷体汉字的深度学习训练集的时候,一开始就遇到的了一个十分棘手的问题,就是如何获取神经网络的训练集数据。通过上网搜素,笔者没有
- 说明: 本文的自动更新功能使用的项目为 electron-vue 脚手架搭建一个默认项目。 参考的文章如下:electron-vue 中文文
- 特殊情况有 * ^ : | . \一、单个符号作为分隔符String address="上海\上海市|闵行区\吴中路";
- 自己尝试在本地搭建了 Django 项目后,想部署到自己云服务器上,经常多次尝试和多次踩坑(捂脸),总结如下:环境:ubuntu14, dj
- 本文实例为大家分享了vue实现全屏滚动效果(的具体代码,供大家参考,具体内容如下是什么网页的一个页面占据一屏的宽高,多个页面上下或者左右拼接
- dbutils封装文件传送门DBUtils是一套Python数据库连接池包,并允许对非线程安全的数据库接口进行线程安全包装。DBUtils来
- 首先是抓包,使用scapy模块,sniff()函数 在其中参数为本地文件路径时,操作为打开本地文件若参数为BPF过滤规则和回调函数,则进行S
- 一、开发工具**Python****版本:**3.6.4相关模块:DecryptLogin模块;argparse模块;以及一些Python自