当前位置: 首页 > article >正文

thinkphp6出现 htmlentities() expects parameter 1 to be string, array given

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

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

1、出现问题前的代码

PHP代码

$this->assign('list', $list);


前端代码
let data = "{$list}";

运行报错: htmlentities() expects parameter 1 to be string, array given

2、解决问题后的代码
  2.1  php代码 

# thinkphp 框架向前台输出变量, 转为 json 字符串
$this->assign('list', json_encode($list));
2.2 前端代码
// javascript,加上 `raw` 方法
let data = JSON.parse('{$list|raw}'); // 这样就被转化成一个对象

//循环
$.each(store_info , function(key , val){
	let name = val.name;
})


http://www.kler.cn/a/156624.html

相关文章:

  • k8s 1.28.2 集群部署 docker registry 接入 MinIO 存储
  • 《Python Web 抓取实战:豆瓣电影 Top 250 数据抓取与分析》
  • 批量从Excel某一列中找到符合要求的值并提取其对应数据
  • 开源项目推荐——OpenDroneMap无人机影像数据处理
  • Rocky、Almalinux、CentOS、Ubuntu和Debian系统初始化脚本v9版
  • docker构建jdk11
  • 金融帝国实验室(Capitalism Lab)官方正版游戏『2023双12特卖』
  • 微信小程序uni.chooseImage()无效解决方案
  • C#/.NET/.NET Core优秀项目和框架2023年11月简报
  • prometheus部署及与grafana结合应用
  • 使用射线单击物体显示,点击物体隐藏
  • LD_PRELOAD劫持、ngixn临时文件、无需临时文件rce
  • 人机交互——言语信息表示模型
  • NetApp EF 系列全闪存存储,为实时分析、HPC 和数据库等性能敏感型工作负载提供助力
  • 数字孪生3D场景开发工具:弥补不足,开拓全新可能
  • Linux入门攻坚——7、磁盘管理——文件系统挂载管理及RAID、LVM
  • 学生犯错误老师应该怎么教育
  • colab notebook导出为PDF
  • C语言图书管理系统的代码,包括图书录入、查询、插入、修改和删除功能。
  • 奇迹mu 架设过程中可能会出现的问题及解决办法
  • 微机原理——定时器8253(8254)学习1
  • ROS第一个程序——helloworld
  • error转string
  • Linux 基础知识整理(一)
  • GEE:Sobel算子卷积
  • 第三届首都高校“青春智慧”新铁人三项公开赛圆满落幕