注意注意: 本文对应 ThinkPHP5.1 版本。

前言 - 出现问题的原因

为避免出现 XSS 安全问题,Thinkphp5.1 默认变量输出都会使用 htmlentities 方法进行转义输出。

如果不想被转义输出,模板渲染时,需要在变量后面加上 raw方法,如:{$data|raw}


一、出现问题前的代码

1.1 PHP 代码

# thinkphp 框架向前台输出变量
$this->assign('store', $info);

1.2 前端代码

let data = "{$store}";

1.3 报错

问题描述: htmlentities() expects parameter 1 to be string, array given


二、解决问题后的代码

2.1 PHP 代码

<?php# thinkphp 框架向前台输出变量, 转为 json 字符串
$this->assign('store', json_encode($info));

2.2 前端代码

// javascript,加上 `raw` 方法
let data = JSON.parse('{$store|raw}'); // 这样就被转化成一个对象// 就可以愉快的循环了
$.each(store_info , function(key , val){let name = val.name;
})

【thinkphp5.1】htmlentities() expects parameter 1 to be string, array given相关推荐

  1. PHP:报错 strpos() expects parameter 1 to be string, integer given

    PHP报错: strpos() expects parameter 1 to be string, integer given 出错代码 public static function showArti ...

  2. oracle 隐藏视图定义,【学习笔记】show hidden parameter 创建查看隐藏参数视图

    天萃荷净 分享一篇开发DBA常用的show hidden parameter,创建查看隐藏参数视图的案例步骤 1.创建查看隐藏参数视图(show_hidden_v$parameter) --conn ...

  3. 【Thinkphp5+Ueditor】Thinkphp5中用Ueditor无法获取内容的问题

    [问题描述] 前端页面使用Ueditor富文本框,使用form表单提交,controller控制器中使用request()->param()['content']获取不到值,代码如下: form ...

  4. 【Verilog HDL】参数(Parameter)的作用案例

    我在学习Verilog HDL的时候并没有系统的去学,只是大致的了解了下,然后就用一些常用的语法去设计简单常见的硬件电路,这样做的好处是节省时间,也不会感觉重新学习一门语言很累,但是也会遇到一些问题, ...

  5. thinkphp extend.php,【ThinkPHP5.1】如何引用extend的类库

    author:咔咔 wechat:fangkangfk tp3.1使用内置import()也可使用原生的导入 tp3.2使用的内置import()或者vender()也可使用原生的导入 tp5.0:L ...

  6. 【bug记录】 Argument of type ‘AsyncThunkAction<void, string, {}>‘ is not assignable to parameter of type

    const dispatch = useDispatch(); // 这里const dispatch: Dispatch<AnyAction>useEffect(() => {di ...

  7. laravel 报错htmlspecialchars() expects parameter 1 to be string, object given

    翻译过来就是     期望参数1是字符串 意思就是说变量为数组,应以数组的方式输出 @foreach($xxx as $k=>$y) {{$k}}{{$y}} @endforeach 转载于:h ...

  8. 【Java语法】StringBuilder 可变字符序列 和普通String的对比

    StringBuilder类 我们打开AbstractStringBuilder的源码,可以看到内部是一个字符数组,但这个字符数组没有用final修饰,随时可以修改.因此,StringBuilder称 ...

  9. expects parameter 1 to be resource, array given 错误解析

    被弄恶心了.字面上就是传递的参数不是资源类型 判断fetch_Array($query) 中传递的参数 $query 是不是资源就行了,试用@屏蔽错误不是一个好的程序员应该做的, is_resourc ...

最新文章

  1. 求封闭曲线面积vc代码_圆锥曲线综合5个类型,逐一突破
  2. python 自动点击上传以后上传文件,python使用selenium模拟点击网页实现自动导入上传文件功能...
  3. vue选中点击的元素_vue中v-for循环选中点击的元素并对该元素添加样式操作
  4. Mongodb在Windows下安装及配置
  5. c语言入门经典课后作业,C语言入门经典习题答案.doc
  6. Factorization Machine 1
  7. .Net资源文件全球化
  8. Hyperledger Fabric ./byfn.sh -m up -s couchdb Error peer0.org1 failed to join the channel
  9. 20200710每日一句
  10. cad详图怎么画_CAD的图框应该怎么画? - CAD自学网
  11. Term Weighting
  12. 手把手教你画圆锥渐变
  13. Redis——过期时间/过期回收策略
  14. 【Cesium】计算模型的朝向四元数,实现模型运动中调整朝向
  15. JAVA的Map怎么判断为空_检查Java中的HashMap是否为空
  16. 没有群晖却要共享文件?试试HFS搭建精简版NAS吧
  17. 未来,大数据行业工资会断崖式下滑吗?
  18. 刀片之家礼品兑换帮助
  19. Redis从阿里云迁移至华为云
  20. gh-ost 工具

热门文章

  1. 100多个经典常用的PHP功能插件大全实例演示和下载
  2. 别用cmd了,配置一个比Mac终端还美的Windows Terminal——详细教程
  3. 9.2 向量范数的三大不等式
  4. Golang http server 跨域问题与解决办法
  5. [Day 7]JS FA、用户交互、JS动画的实现(二)
  6. 全容灾、热备份、温归档、智融合,电信运营商的数据保护黄金法则
  7. java什么是reference_如何理解java中的Reference和引用类型?正确的案例讲解
  8. 头歌Educoder——JDBC基础编程练习
  9. 初识C语言--第二弹
  10. [C#入门] 函数 | 方法