浅谈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
ThinkPHP验证码使用简明教程
Mar 05 PHP
完善CodeIgniter在IDE中代码提示功能的方法
Jul 19 PHP
深入理解PHP变量的值类型和引用类型
Oct 21 PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 PHP
golang与php实现计算两个经纬度之间距离的方法
Jul 22 PHP
php简单截取字符串代码示例
Oct 19 PHP
PC端微信扫码支付成功之后自动跳转php版代码
Jul 07 PHP
php实现websocket实时消息推送
Mar 30 PHP
PHP __call()方法实现委托示例
May 20 PHP
php获取微信openid方法总结
Oct 10 PHP
详解phpstorm2020最新破解方法
Sep 17 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 COOKIE立即生效,不用刷新就可以使用
2011/03/09 PHP
解析在zend Farmework下如何创立一个FORM表单
2013/06/28 PHP
PHP base64编码后解码乱码的解决办法
2014/06/19 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
PHP解决中文乱码
2017/04/28 PHP
jquery 1.4.2发布!主要是性能与API
2010/02/25 Javascript
基于JQuery的6个Tab选项卡插件
2010/09/03 Javascript
TinyMCE 新增本地图片上传功能
2010/11/05 Javascript
JavaScript作用域链示例分享
2014/05/27 Javascript
JavaScript数据类型详解
2015/04/01 Javascript
JavaScript实现多个重叠层点击切换效果的方法
2015/04/24 Javascript
详解JavaScript的Polymer框架中的通知交互
2015/07/29 Javascript
分享12个非常实用的JavaScript小技巧
2016/05/11 Javascript
详解JavaScript中|单竖杠运算符的使用方法
2016/05/23 Javascript
3分钟快速搭建nodejs本地服务器方法运行测试html/js
2017/04/01 NodeJs
Node.js使用cookie保持登录的方法
2018/05/11 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
vue自定义移动端touch事件之点击、滑动、长按事件
2018/07/10 Javascript
vue利用v-for嵌套输出多层对象,分别输出到个表的方法
2018/09/07 Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
2018/10/09 Javascript
微信小程序HTTP接口请求封装的实现
2019/02/21 Javascript
vue自定义指令directive的使用方法
2019/04/07 Javascript
通过实例学习React中事件节流防抖
2019/06/17 Javascript
vue 实现click同时传入事件对象和自定义参数
2021/01/29 Vue.js
[01:00:44]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第三局
2016/03/04 DOTA
解决pandas中读取中文名称的csv文件报错的问题
2018/07/04 Python
Python获取基金网站网页内容、使用BeautifulSoup库分析html操作示例
2019/06/04 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
详解Html5 监听拦截Android返回键方法
2018/04/18 HTML / CSS
本科生详细的自我评价
2013/09/19 职场文书
三个儿子教学反思
2014/02/03 职场文书
2015年生产部工作总结范文
2015/05/25 职场文书
追悼词范文大全
2015/06/23 职场文书
导游词之澳门妈祖庙
2019/12/19 职场文书
MySQL深度分页(千万级数据量如何快速分页)
2021/07/25 MySQL
Win11无法访问设备和打印机 如何解决页面空白
2022/04/09 数码科技