JSON

PHP中json数据格式学习总结

字号+ 作者:H5之家 来源:H5之家 2016-06-10 15:00 我要评论( )

Json格式规则详见阮一峰老师的网络日志 - 并列的数据之间用逗号(”, “)分隔 - 映射用冒号(”: “)表示 - 并列数据的集合(数组)用方括号(“[]”)表示 - 映

Json格式规则

详见阮一峰老师的网络日志
- 并列的数据之间用逗号(”, “)分隔
- 映射用冒号(”: “)表示
- 并列数据的集合(数组)用方括号(“[]”)表示
- 映射的集合(对象)用大括号(”{}”)表示

这里摘取阮一峰老师的举例,留作日后温习
下面这句话:
“北京市的面积为16800平方公里,常住人口1600万人。上海市的面积为6400平方公里,常住人口1800万。”
写成json格式就是这样:

[   {"城市":"北京","面积":16800,"人口":1600},   {"城市":"上海","面积":6400,"人口":1800} ] JS中数组和对象的区别 数组表示有序数据的集合,而对象表示无序数据的集合。如果数据的顺序很重要,就用数组,否则就用对象 另一个区别是,数组的数据没有”名称”(name),对象的数据有”名称”(name)

在JS中,关联数组就是对象,对象就是关联数组
例如对象:

var a={"城市":"北京","面积":16800,"人口":1600};

写成关联数组形式:

a["城市"]="北京"; a["面积"]=16800; a["人口"]=1600;

这一点与php语言完全不同,在php中,关联数组也是数组。

var a=[1,2,3,4]; a['foo']='Hello World'; alert(a.length);//4

在JS中最后的结果是4,也就是说,数组a的元素个数是4个。
但是,运行同样内容的php代码就不一样了:

<?php $a=array(1,2,3,4); $a["foo"]="Hello world"; echo count($a); ?>

最后的结果是5,也就是说,数组a的元素个数是5个。

PHP中操作json的函数 加密 json_encode 解密 json_decode 一维数组到json数据格式的转换 <?php $arr_1 = array(); $arr_1['username'] = 'lisi'; $arr_1['age'] = 20; echo json_encode($arr_1);//{"username":"lisi","age":20} ?> 多维数组到json数据格式的转换 <?php $arr_2 = array(); // 三维数组 $arr_2['member']['lisi']['job'] = "worker"; $arr_2['member']['lisi']['age'] = 30; $arr_2['member']['wangwu']['job'] = "student"; $arr_2['member']['wangwu']['age'] = 10; echo json_encode($arr_2); //{"member":{"lisi":{"job":"worker","age":30},"wangwu":{"job":"student","age":10}}} ?> 对象到json数据格式的转换

对象转化为json数据时,只转换公有变量,私有变量不转换

<?php class Person{ public $name = "public name"; protected $ptName = "protected name"; private $pName = "private name"; public function sayName(){ return $this->name; } } $person1 = new Person(); echo json_encode($person1);//{"name":"public name"} ?> 转换json数据格式到对象类型 <?php $jsonStr = '{"key1":"value1","key2":"value2"}'; print_r(json_decode($jsonStr,false));//stdClass Object ( [key1] => value1 [key2] => value2 ?> 转换json数据格式到数组类型 <?php $jsonStr = '{"key1":"value1","key2":"value2"}'; print_r(json_decode($jsonStr,true));//Array ( [key1] => value1 [key2] => value2 ) ?>

json_decode($jsonStr,true); 第二个参数如果是true ,那么结果会被转换为array类型,参数默认为false,默认转换为对象

以上就是PHP中json数据格式学习总结的全文介绍,希望对您学习和使用php有所帮助.

这些内容可能对你也有帮助

更多PHP教程可查看PHP教程列表页。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • jquery遍历json对象集合详解

    jquery遍历json对象集合详解

    2016-06-07 13:00

  • 通过Ajax技术,将数组类型数据转换为JSON格式的对象

    通过Ajax技术,将数组类型数据转换为JSON格式的对象

    2016-06-06 11:00

  • struts的json格式数据输出

    struts的json格式数据输出

    2016-06-06 10:00

  • 使用jquery实现json对象转换成字符串,和将字符串转换成json对象

    使用jquery实现json对象转换成字符串,和将字符串转换成json对象

    2016-06-05 18:00

网友点评
m