Peter清风

Don't aim for success if you want it; just do what you love and believe in, and it will come natural

json格式数据

php操作JSON格式数据

知识点:

1、JSON数据格式介绍

2、对数据编码成JSON格式

3、对JSON数据进行解码,并操作

JSON数据格式表示方式如下:

{ "programmers": [

  { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },

  { "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },

  { "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }

  ],

  "authors": [

  { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },

  { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },

  { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }

  ],

  "musicians": [

  { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },

  { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }

  ] }

用php将数据编码成JSON格式:

复制代码
<?php  
//php中用数组表示JSON格式数据
$arr = array(  
    'firstname' => iconv('gb2312', 'utf-8', '非诚'),  
    'lastname' => iconv('gb2312', 'utf-8', '勿扰'),  
    'contact' => array(  
        'email' =>'fcwr@dibaye.com',  
        'website' =>'http://www.dibaye.com',  
    )  
);  
//将数组编码成JSON数据格式
$json_string = json_encode($arr);  
//JSON格式数据可直接输出
echo $json_string;
?>
复制代码

需要指出的是,在非UTF-8编码下,中文字符将不可被encode,结果会出来空值,所以,如果你使用 gb2312编写PHP代码,那么就需要将包含中文的内容使用iconv或者mb转为UTF-8再进行json_encode。

输出:(JSON格式)

{"firstname":"\u975e\u8bda","lastname":"\u52ff\u6270","contact":{"email":"fcwr@dibaye.com","website":"http:\/\/www.dibaye.com"}}

用php对JSON数据进行解码并处理:

复制代码
<?php  
//php中用数组表示JSON格式数据
$arr = array(  
    'firstname' => iconv('gb2312', 'utf-8', '非诚'),  
    'lastname' => iconv('gb2312', 'utf-8', '勿扰'),  
    'contact' => array(  
        'email' =>'fcwr@dibaye.com',  
        'website' =>'http://www.dibaye.com',  
    )  
);  
//将数组编码成JSON数据格式
$json_string = json_encode($arr);  
//将JSON格式数据进行解码,解码后不是JSON数据格式,不可用echo直接输出
$obj = json_decode($json_string);
//强制转化为数组格式
$arr = (array) $obj;
//按数组方式调用里面的数据
echo iconv('utf-8','gb2312',$arr['firstname']);  
echo '</br>';
//输出数组结构
print_r($arr);
?>
复制代码
阅读更多
个人分类: php
上一篇关于使用公钥进行签名验证的代码
下一篇json格式的数据
想对作者说点什么? 我来说一句

XML数据生成Json格式代码

2009年03月06日 70KB 下载

json.zip 生成json格式数据

2017年09月21日 61KB 下载

json格式数据整合

2016年08月18日 1021B 下载

全国城市数据json格式

2018年02月01日 1.59MB 下载

json数据工具

2018年02月02日 43KB 下载

图表生成chart

2012年11月21日 135KB 下载

JSONKit json格式解析类

2014年06月16日 61KB 下载

JSON Viewer

2012年07月01日 105KB 下载

没有更多推荐了,返回首页

关闭
关闭