【PHP函数】json_decode() ---- 对 JSON 格式的字符串进行解码
json_decode() --- 对 JSON 格式的字符串进行解码
1、用法:
mixed json_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )
参数说明:
$json: json格式的字符串
$assoc:
- 值为
true: 表示返回数组形式的数据 - 值为
false:表示返回对象形式的数据 - 默认为
false
- 值为
$depth:指定递归深度。
$options: JSON解码的掩码选项。 现在有两个支持的选项。
- 第一个是
JSON_BIGINT_AS_STRING, 用于将大整数转为字符串而非默认的float类型。 - 第二个是
JSON_OBJECT_AS_ARRAY, 与将assoc设置为 TRUE 有相同的效果。
- 第一个是
2、范例:
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'
json_decode($json);
object(stdClass)#1 (5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}json_decode($json, true);
array(5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}
3、应用场景:
有返回的数据$modeofpayment,需要对其进行循环输出每条数据。如何实现?
其中:$modeofpayment = [{"id":1,"name":"货到付款"},{"id":2,"name":"支付宝付款"},{"id":3,"name":"微信付款"}];
(1)var_dump()打印结果为string '[{"id":1,"name":"货到付款"},{"id":2,"name":"支付宝付款"},{"id":3,"name":"微信付款"}]'
其数据类型为string
(2)将数据转化为数组形式:json_decode($json, true)。得到结果为:
array (size=3)
0 =>
array (size=2)
'id' => int 1
'name' => string '货到付款' (length=12)
1 =>
array (size=2)
'id' => int 2
'name' => string '支付宝付款' (length=15)
2 =>
array (size=2)
'id' => int 3
'name' => string '微信付款' (length=12)
(3)使用模板引擎循环输出
{foreach name="$offer.modeofpayment" item="vo"}
<label class="iconfont wx">
<input type="radio" name="paymentmode" value="{$vo.id}" /> {$vo.name}
</label>
{/foreach}
或者
{volist name="$offer.modeofpayment" id="vo"}
<label class="iconfont wx">
<input type="radio" name="paymentmode" value="{$vo.id}" /> {$vo.name}
</label>
{/volist}
【PHP函数】json_decode() ---- 对 JSON 格式的字符串进行解码的更多相关文章
- json格式的字符串转为json对象遇到特殊字符问题解决
中午做后台发过来的json的时候转为对象,可是有几条数据一直出不来,检查发现json里包含了换行符,造成这种情况的原因可能是编辑部门在编辑的时候打的回车造成的 假设有这样一段json格式的字符串 va ...
- 在PHP代码中处理JSON 格式的字符串的两种方法:
总结: 在PHP代码中处理JSON 格式的字符串的两种方法: 方法一: $json= '[{"id":"1","name":"\u ...
- JavaScript中,JSON格式的字符串与JSON格式的对象相互转化
前言:JSON是一个独立于任何语言的数据格式,因此,严格来说,没有“JSON对象”和“JSON字符串”这个说法(然而”菜鸟教程“和”W3school“使用了“JSON对象”和“JSON字符串”这个说法 ...
- JSon_零基础_006_将JSon格式的字符串转换为Java对象
需求: 将JSon格式的字符串转换为Java对象. 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“name.values”集合, 通过get(key ...
- 解决如下json格式的字符串不能使用DataContractJsonSerializer序列化和反序列化 分类: JSON 2015-01-28 14:26 72人阅读 评论(0) 收藏
可以解决如下json格式的字符串不能使用DataContractJsonSerializer反序列化 { "ss": "sss", " ...
- android实现json数据的解析和把数据转换成json格式的字符串
利用android sdk里面的 JSONObject和JSONArray把集合或者普通数据,转换成json格式的字符串 JSONObject和JSONArray解析json格式的字符串为集合或者一般 ...
- C#将datatable的某一列转换成json格式的字符串
将datatable的某一列转换成json格式的字符串(转换完后自己在字符串前后加{}) /// <summary> ///DataTable装换 Column数据 组合成json 现在的 ...
- 校验字符串是否是JSON格式,将不规则展示的json格式的字符串进行规则展示(json格式化)
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] var str = {"code": "","svcname" ...
- 获取JSON格式的字符串各个属性对应的值
{"lastrdtime":1515998187379,"creditbalance":"$5.00","contactmode& ...
随机推荐
- 关于vue跨域名对接微信授权认证和APP授权认证
这种情况一般也只会出现在前后端分离,跨域名授权的时候吧.耗费了一个前端+一个后台+一个网关,熬夜通宵了两天才整出来一套方法(你们见过凌晨6点的杭州吗,对,我下班的时候天黑了,到家天亮了....),和开 ...
- bzoj1061 NOI2018 志愿者招募——solution
Description 申奥成功后,布布经过不懈努力,终于成为奥组委下属公司人力资源部门的主管.布布刚上任就遇到了一个难 题:为即将启动的奥运新项目招募一批短期志愿者.经过估算,这个项目需要N 天才能 ...
- JS(微信小程序)处理银行卡号
其实这是一个小程序的项目,但是JS还是那个JS 在本项目中要实现两种效果: 每隔四位插入空格: <view class='item_list'> <label>银行卡号:< ...
- 微软MVP社区秋日巡讲 —— 北京Windows Phone应用开发训练营
微软MVP社区秋日巡讲 —— 北京Windows Phone应用开发训练营 活动说明和报名地址www.aka.ms\mvpbeijing 欢迎北京的朋友参与在今年10月举办的Windows Phon ...
- 回归JavaScript基础(八)
主题:引用类型包装类.单体内置对象的介绍. 对于我们开发人员来说,JavaScript有种引用类型一定很陌生!那就是基本包装类型:Boolean.Number和String.这也不是我们的错,主要这些 ...
- webpack的require是如何工作的?
https://stackoverflow.com/questions/35625593/how-does-webpacks-require-work wepback的require函数调用类似于no ...
- java:通过Calendar类正确计算两日期之间的间隔
在开发Android应用时偶然需要用到一个提示用户已用天数的功能,从实现上来看无非就是持久化存入用户第一次使用应用的时间firstTime(通过SharedPreferences .xml.sqlit ...
- 安装matplotlib
1.1 Linux中安装matplotlib 如果使用的系统自带的python版本,可使用系统的包管理器安装matplotlib,命令如下: $ sudo apt-get install python ...
- Custom Settings.in 配置信息收集
[Settings] Priority=Default Properties=MyCustomProperty [Default] ;是否允许部署操作系统到目标计算机 OSInstall=YES ;是 ...
- ZT Android 4.2蓝牙介绍
Android 4.2蓝牙介绍 分类: Android开发系列 2013-06-27 14:16 7110人阅读 评论(22) 收藏 举报 目录(?)[-] Android 42蓝牙介绍 一 蓝牙规 ...