json_encode()    AND  json_decode()

来源:互联网 发布:java中或者怎么表示 编辑:程序博客网 时间:2024/06/15 16:13
string json_encode ( mixed $value [, int $options = 0 ] ):该函数主要用来将数组和对象,转换为json格式。$value为要转换的数据,除了resource 类型之外,可以为任何数据类型。

PHP支持关联和索引数组,但由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式。

例1:索引数组
$arr = array(1,2,3,4,5,6);
echo json_encode($arr);
——>[1,2,3,4,5,6]

例2:关联数组
$arr = array(
     1 => ‘q’,
     2 => ‘w’,
     3 => ‘e'
);
echo json_encode($arr);
——>{“1”:’q’, “2”:’w’, “3”:’e'}


mixed json_decode ( string $json [, bool $assoc ] ),接受一个JSON 格式的字符串并且把它转换为 PHP 变量

例1:
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'
json_decode($json);
——>输出为 对象
json_decode($json, true);
——> 输出为 数组

以下是3个错误的json串:
$bad_json = "{ 'bar': 'baz' }json的分隔符(delimiter)只允许使用双引号,不能使用单引号。
$bad_json = '{ bar: "baz" }json名值对的”名”(冒号左边的部分),任何情况下都必须使用双引号。
$bad_json = '{ "bar": "baz", }最后一个值之后不能添加逗号(trailing comma)。
1 0
原创粉丝点击