浅谈Laravel模板实体转义带来的坑


Posted in PHP onOctober 22, 2019

问题

最近在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 !!}.

然后试了一下,大功告成!

总结

虽然知识大家都懂,但是如果知识换一种方式来考验我们,我们可能一下子并不能滤清思绪,总的来说还是基础比较差,还得补补啊。

以上这篇浅谈Laravel模板实体转义带来的坑就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php&amp;java(一)
Oct 09 PHP
php设计模式之单例模式使用示例
Jan 20 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
Jun 23 PHP
PHP程序员常见的40个陋习,你中了几个?
Nov 20 PHP
php数组添加元素方法小结
Dec 20 PHP
Symfony2学习笔记之插件格式分析
Mar 17 PHP
Netbeans 8.2与PHP相关的新特性介绍
Oct 08 PHP
Yii2实现多域名跨域同步登录退出
Feb 04 PHP
PHP基于curl模拟post提交json数据示例
Jun 22 PHP
详解PHP 二维数组排序保持键名不变
Mar 06 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
Mar 09 PHP
PHP实现考试倒计时功能代码
Apr 16 PHP
Laravel定时任务的每秒执行代码
Oct 22 #PHP
Laravel框架实现定时Task Scheduling例子
Oct 22 #PHP
laravel 解决强制跳转 https的问题
Oct 22 #PHP
Laravel重定向,a链接跳转,控制器跳转示例
Oct 22 #PHP
Laravel 简单实现Ajax滚动加载示例
Oct 22 #PHP
Laravel 在views中加载公共页面的实现代码
Oct 22 #PHP
laravel添加前台跳转成功页面示例
Oct 22 #PHP
You might like
gd库图片下载类实现下载网页所有图片的php代码
2012/08/20 PHP
Thinkphp+smarty+uploadify实现无刷新上传
2015/07/30 PHP
php连接oracle数据库的方法(测试成功)
2016/05/26 PHP
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
高效的表格行背景隔行变色及选定高亮的JS代码
2010/12/04 Javascript
js中array的sort()方法使用介绍
2014/02/20 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
老生常谈js动态添加事件--- 事件委托
2016/07/19 Javascript
Vue.js动态组件解析
2016/09/09 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
JS开发中基本数据类型具体有哪几种
2017/10/19 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2018/03/01 Javascript
示例vue 的keep-alive缓存功能的实现
2018/12/13 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
JavaScript/TypeScript 实现并发请求控制的示例代码
2021/01/18 Javascript
[01:20:47]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第一场 1月19日
2021/03/11 DOTA
Python写入CSV文件的方法
2015/07/08 Python
Python通过matplotlib绘制动画简单实例
2017/12/13 Python
浅谈使用Python内置函数getattr实现分发模式
2018/01/22 Python
简单谈谈python基本数据类型
2018/09/26 Python
PyQt5+python3+pycharm开发环境配置教程
2020/03/24 Python
python 日志 logging模块详细解析
2020/03/31 Python
详解CSS3开启硬件加速的使用和坑
2017/08/21 HTML / CSS
Expedia挪威官网:酒店、机票和租车
2018/03/03 全球购物
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
学生实习推荐信范文
2013/11/26 职场文书
工商治理实习生的自我评价
2014/01/15 职场文书
教师个人剖析材料
2014/02/05 职场文书
《鲁班和橹板》教学反思
2014/04/27 职场文书
团日活动总结报告
2014/06/25 职场文书
委托书的写法
2014/09/16 职场文书
中学生旷课检讨书2篇
2014/10/09 职场文书
2014年客户经理工作总结
2014/11/20 职场文书
创业计划书之外语培训班
2019/11/02 职场文书
Nginx反向代理学习实例教程
2021/10/24 Servers
numpy array找出符合条件的数并赋值的示例代码
2022/06/01 Python