您的位置:首页 > Web前端 > JavaScript

JSON的基础知识

2016-06-13 21:59 381 查看
JSON的基本语法
     JSON的四个基本规则

         (1)并列的数据之间用逗号(“,”)分隔。

         (2)映射用冒号(“:”)表示。

         (3)并列数据的集合(数组)用方括号(“[]”)表示。

         (4)映射的集合(对象)用大括号(“{}”)表示。

     举例:

     “北京市的面积为16800平方公里,常住人口1600万人。上海市的面积为6400平方公里,常住人口1800万。”

      转换成JSON格式之后:

     [   key     value  key     value    key   value

      {“城市”:”北京”,面积”:16800,”人口”:1600},

      {“城市”:”上海”:”面积”:6400,”人口”:1800}

    ]

 

JSON的优点

   1、数据格式比较简单,易于读写,格式都是压缩的,占用带宽小。

   2、支持多种语言,包括ActionScript,C,C#,ColdFusion,Java,JavaScript,Perl,PHP,Python,Ruby等服务器端语言,便于服务器端的解析。

JSON的缺点

   1、要求字符集必须是Unicode,受约束性强。

   2、语法过于严谨,必须遵循JSON语法四个原则。

JSON数据格式和serialize数据格式的异同  

  *相同点

   1、都是把其他数据类型转换成一个可以传输的字符串

   2、都是结构性数据

  *不同点

   1、Serialize序列化后的数据格式 保存数据原有类型

   2、JSON数据格式相比Serialize序列化之后的数据格式更简洁

  *使用场景

   1、JSON适合数据量大,不要求保留原有数据类型的情况下使用

   2、Serialize适合存储带有加密方式的数据串,防止数据被中途截取反序列化破解

 

PHP中操作JSON的重要函数

   首先简单解释一下什么是索引数组和关联数组

    索引数组

   $array_1 = array( ‘name’ , ‘age’ ); //  [ “name” , “age” ]数组

  关联数组

    $array_2 = array( 1 => ‘ name ‘, 2 => ‘ age ‘ ); //{ “1” : “name” , “2” : “age” }对象

 

    函数

    json_encode()

           语法:
string json_encode(mixed $value [ , int $options = 0 ] )

    json_decode()

           语法:
mixed json_decode(string $json [ , bool $assoc ] )

                       //$assoc
默认为False,若为true
返回数组

           接受一个JSON格式的字符串并且把它转换为PHP变量

一维数组转换成json

<?php
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
?>    在浏览器输入链接,输出如下:









把json数据转换为数组形式数据
<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json,true));
?> 
 在浏览器输入链接,输出如下:







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  json