JSON数据的语法规则

1、数据以键值对的形式

2、数据由逗号分隔

3、花括号保存对象

4、方括号保存数组

以PHP的数组为例:

<?php
$arr = array(
"aaaa",
"bbbb",
"cccc"=>array(
"dddd",
"eeee"=>array(
"xxxxx",
"yyyyy"
),
"ffff"=>array(
"ggggg",
"hhhh",
"iiiii"=>array(
"jjjjj",
"kkkkk",
"lllll"
)
)
)
); print_r($arr)."\n";
print_r(json_encode( $arr ));
?>

  

  运行:

Array
( [0] => aaaa
[1] => bbbb
[cccc] => Array
(
[0] => dddd
[eeee] => Array
(
[0] => xxxxx
[1] => yyyyy
)
[ffff] => Array
(
[0] => ggggg
[1] => hhhh
[iiiii] => Array
(
[0] => jjjjj
[1] => kkkkk
[2] => lllll
)
)
)
)
{
"0":"aaaa",
"1":"bbbb",
"cccc":{
"0":"dddd",
"eeee":["xxxxx","yyyyy"],
"ffff":{
"0":"ggggg",
"1":"hhhh",
"iiiii":["jjjjj","kkkkk","lllll"]
}
}
}

 

  上面例子中,当不同深度的数组元素的类型不同时(有的为字符串值,有的又是一个数组)。

  虽然键值对是以冒号分隔,冒号的左边毫无疑问是 数组的索引 或者 关联数组的key,而右边呢?什么时候直接用双引号来将值括起来?什么时候该用花括号?什么时候该用方括号?

  可以看上面的例子就可以总结出来,因为总结绕来绕去,所以就不写了,一看上面代码的运行结果就能明白了。

JSON数据格式解析的更多相关文章

  1. android JSON数据格式 解析

    一.   JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧.  Json建构于两种结构:  最后再加一种格式在文章的最后显示出来非常少有的格式   ...

  2. android 解析json数据格式(转)

    json数据格式解析我自己分为两种: 一种是普通的,一种是带有数组形式的: 普通形式的:服务器端返回的json数据格式如下: {"userbean":{"Uid" ...

  3. android 解析json数据格式

    json数据格式解析我自己分为两种: 一种是普通的,一种是带有数组形式的: 普通形式的:服务器端返回的json数据格式如下: {"userbean":{"Uid" ...

  4. <转>android 解析json数据格式

    json数据格式解析我自己分为两种:一种是普通的,一种是带有数组形式的: 普通形式的:服务器端返回的json数据格式如下:{"userbean":{"Uid": ...

  5. 关于iOS中几种第三方对XML/JSON数据解析的使用

    Json XML 大数据时代,我们需要从网络中获取海量的新鲜的各种信息,就不免要跟着两个家伙打交道,这是两种结构化的数据交换格式.一般来讲,我们会从网络获取XML或者Json格式的数据,这些数据有着特 ...

  6. JS中将JSON的字符串解析成JSON数据格式《转》

    在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的ea ...

  7. JSON字符串解析成JSON数据格式

    在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的ea ...

  8. C语言cJSON库的使用,解析json数据格式

    C语言cJSON库的使用,解析json数据格式 摘自:https://www.cnblogs.com/piaoyang/p/9274925.html 对于c语言来说是没有字典这样的结构的,所以对于解析 ...

  9. Android数据格式解析对象JSON用法

    1.JSON概念: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性,从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. JSON可以将 ...

随机推荐

  1. 「JoyOI1080」N皇后

    这是菜鸡的我第一次写这类题目: 题意:就是在N*N的棋盘上,每一行,每一列,所有的对角线都只能有一个棋子. 先分析:假若N=4: 则为其中的一种答案.要输出左右的解,肯定要枚举出所有的解.那么非常自然 ...

  2. ethereum/EIPs-158 State clearing 被EIP-161取代

    eip title author type category status created superseded-by 158 State clearing Vitalik Buterin Stand ...

  3. Python实现杨辉三角,超详细!

    巧妙实现杨辉三角代码 def triangles(): N=[1] #初始化为[1],杨辉三角的每一行为一个list while True: yield N #yield 实现记录功能,没有下一个ne ...

  4. 【Codeforces 696D】Legen...

    Codeforces 696 D 题意:给\(n\)个串,每个串有一个权值\(a_i\),现在要构造一个长度为\(l\leq 10^{14}\)的串,如果其中包含了第\(i\)个串,则会得到\(a_i ...

  5. <转>浏览器缓存机制

    本篇博客转载自github,原文地址:浏览器缓存篇 前言 在前端开发中,缓存有利于加快网页的加载速度,同时缓存能够被反复利用,所以可以减少流量和带宽的开销. 缓存的分类有很多种,CDN缓存.数据库缓存 ...

  6. Saltstack管理对象属性之grains和pillar组件

    Grains组件 Grains是saltstack记录minion的一些静态信息组件,可以简单的理解为grains里面记录着每台minion的一些常用的属性,比如cpu.内存.磁盘.网络信息等,可以通 ...

  7. Android 解决布局无法对齐的情况

    是这样的,在为app制作titlebar或者使用RadioGroup设置布局的的weight属性后,会出现有些机型的手机布局无法居中的问题. 在遇到这类问题时,大部分的原因就是因为没有设置控件的属性: ...

  8. TCP/IP协议---IP协议

    IP协议层 在传输层的下边,链路层的上边. IP层封装后称为数据报(传输层叫数据段,链路层叫数据帧.值得注意的是,不是所有的以太网数据帧都是IP数据报,至少以太网还要使用ARP协议.不是所有的IP数据 ...

  9. 走近SpringBoot

    (博客园不支持MarkDown编辑,看完整版请移步:https://www.zybuluo.com/Allen-llh/note/1199946) 1. (Building a RESTful Web ...

  10. Angularjs 地址联动2.1.1

    这个地址联动是基于 Angularjs 的 效果图如下: 看着是不是可美观了?哈哈!源码如下: <!DOCTYPE HTML> <html lang="zh-CN" ...