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

PHP中json_decode函数

JSON函数

json_decode函数

JSON 字符串 :

JSON 中的字符串必须用双引号包围。

例如 {"ctf":"play"} 俩字符串用:隔开

JSON 数字 :

JSON 中的数字必须是整数或浮点数。

例如 {"ctf":100}

在 JSON 中,值必须是以下数据类型之一:字符串,数字,对象(json对象),数组,布尔,null

不可以为以下数据类型之一: 函数,日期,undefined

json_decode

在PHP中 json_decode() 函数用于对 JSON 格式的字符串进行解码,并转换为 PHP 变量。

代码

<?php`
`$json = '{"ctfer":"sanmao","ctf":"misc","age":18,"bisai":14,"champion":5}';`
​
`var_dump(json_decode($json));`
`var_dump(json_decode($json, true));`
`?>

实例演示

例题

[[SWPUCTF 2021 新生赛] jicao]

源代码

<?php
highlight_file('index.php');
include("flag.php");
$id=$_POST['id'];
$json=json_decode($_GET['json'],true);
if ($id=="wllmNB"&&$json['x']=="wllm")
{echo $flag;}
?>

本题需要进行一个post传参,一个get传参,post传参很简单,在Max HackBar或者在BP里传入 id=wllmNB

但是get传参则需要通过调用 PHP 内置函数 json_decode(),将字符串解析为一个关联数组,第二个参数 true 表示将解析结果以数组形式返回。最终将解析得到的数组赋值给变量 $json,可以在后续的代码中使用。

即构造 url+/?json={"x":"wllm"} 即上面所学json对字符串的值

即可得到flag

http://www.lryc.cn/news/2416437.html

相关文章:

  • 一.常见的视频格式有哪些?
  • FPGA组合逻辑设计——译码器
  • EastFax电子传真信创国产化出炉,网络传真换新颜
  • 爬虫xx网站论坛的帖子源码分享
  • FTPrush给Linux上传文件,LINUX CENTOS 7安装FTP服务器详细讲解(配图),FTPRUSH连接上传测试文件...
  • 【计算机网络】TCP和UDP的特点及区别
  • 高等数学 —— 函数的极限
  • MessageQueueMessage Pool—消息的读写、删除和回收
  • 编程算法常用术语中英对照
  • 正则表达式不包含指定字符
  • 着陆页如何设计?详解着陆页设计的5大要点及常见问题
  • nonzero用法
  • 【视频编码学习】AVS3参考软件HPM-4.1简单配置运行
  • 路由策略——route map
  • 非阻塞connect
  • EnableWindow()函数的应用
  • (28)CreateFont函数
  • C# CultureInfo 类之各国语言所对应的的区域性名称
  • JDBC元数据操作(一)-- DatabaseMetaData接口详解
  • 小菜和大鸟的编程故事之三:代码规范和重构意识
  • 数据库系统原理与应用教程(029)—— MySQL 的数据完整性(二):定义主键(primary key)
  • VMware虚拟机安装Ubuntu14.04.5-server详细图文教程
  • JS window对象 返回前一个浏览的页面 back()方法,加载 history 列表中的前一个 URL。 语法: window.history.back();
  • HDTUNE工具下载
  • python 爬取google总结
  • [PaddleGAN]人脸表情迁移-视频换脸
  • Android逆向之旅---破解一款永久免费网络访问工具
  • 关于同步电机的Ldq测量
  • 域名系统(Domain Name System,DNS)
  • 安奈特智能技术-半导体制造行业RFID解决方案