浅谈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与javascript的两种交互方式
Oct 09 PHP
Ajax+PHP 边学边练之四 表单
Nov 27 PHP
PHP开发规范手册之PHP代码规范详解
Jan 13 PHP
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
Jul 17 PHP
PHP关联链接常用代码
Nov 05 PHP
php实现cc攻击防御和防止快速刷新页面示例
Feb 13 PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
Jul 01 PHP
php实现当前页面点击下载文件的简单方法
Sep 22 PHP
PHP receiveMail实现收邮件功能
Apr 25 PHP
ThinkPHP5&amp;5.1框架关联模型分页操作示例
Aug 03 PHP
thinkPHP3.2使用RBAC实现权限管理的实现
Aug 27 PHP
php的lavarel框架中join和orWhere的用法
Dec 28 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
如何在PHP中使用Oracle数据库(2)
2006/10/09 PHP
php日历[测试通过]
2008/03/27 PHP
PHP实现时间轴函数代码
2011/10/08 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
2014/10/14 PHP
PHP单链表的实现代码
2016/07/05 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
Laravel向公共模板赋值方法总结
2019/06/25 PHP
JQuery学习笔记 nt-child的使用
2011/01/17 Javascript
chrome浏览器不支持onmouseleave事件的解决技巧
2013/05/31 Javascript
js统计页面的来访次数实现代码
2014/05/09 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
node.js中实现kindEditor图片上传功能的方法教程
2017/04/26 Javascript
bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能
2017/12/28 Javascript
jQuery子选择器与可见性选择器实例分析
2019/06/28 jQuery
Vue实现多标签选择器
2019/11/28 Javascript
详解Typescript 内置的模块导入兼容方式
2020/05/31 Javascript
[34:56]Ti4冒泡赛LGD vs Liquid 1
2014/07/14 DOTA
使用Python的Scrapy框架编写web爬虫的简单示例
2015/04/17 Python
使用Python脚本将Bing的每日图片作为桌面的教程
2015/05/04 Python
Python实现获取照片拍摄日期并重命名的方法
2017/09/30 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
Python分析微信好友性别比例和省份城市分布比例的方法示例【基于itchat模块】
2020/05/29 Python
银行毕业实习自我鉴定
2013/09/19 职场文书
文秘专业毕业生就业推荐信
2013/11/08 职场文书
安全生产中长期规划实施方案
2014/02/21 职场文书
2014全国两会学习心得体会2000字
2014/03/10 职场文书
银行奉献演讲稿
2014/09/16 职场文书
2014年话务员工作总结
2014/11/19 职场文书
2015年电工工作总结
2015/04/10 职场文书
房产遗嘱范本
2015/08/06 职场文书
公司员工宿舍管理制度
2015/08/07 职场文书
朋友聚会祝酒词
2015/08/10 职场文书
上班旷工检讨书
2015/08/15 职场文书
MySQL高级进阶sql语句总结大全
2022/03/16 MySQL
GoFrame gredis缓存DoVar Conn连接对象 自动序列化GoFrame gredisDo/DoVar方法Conn连接对象自动序列化/反序列化总结
2022/06/14 Golang