程序员人生 网站导航

php中操作json格式数据转换实现代码

栏目:php教程时间:2014-03-17 12:45:01

本文章主要是介绍了在php中操作json格式数据转换程序,我们利用了json_decode()和json_encode()这两个函数来进行操作方便很多.

第一步我们利用json_encode()函数把数据转换成json数据,代码如下:

  1. <?php  
  2. //php中用数组表示JSON格式数据  
  3. $arr = array(  
  4. 'firstname' => iconv('gb2312''utf-8''非诚'),  
  5. 'lastname' => iconv('gb2312''utf-8''勿扰'),  
  6. 'contact' => array(  
  7. 'email' =>'fcwr@phpfensi.com',  
  8. 'website' =>'http://www.phpfensi.com',  
  9. )  
  10. );  
  11. //将数组编码成JSON数据格式  
  12. $json_string = json_encode($arr);  
  13. //JSON格式数据可直接输出  
  14. echo $json_string;  
  15. ?> 

此转换函数只支持utf-8格式的如果中间有中文可以利用iconv或者mb转为UTF-8再进行json_encode,这样就不会有任何问题。

第二步,对数据进行解析我们也用一个php json处理函数json_decode()了,代码如下:

  1. <?php  
  2. //php中用数组表示JSON格式数据  
  3. $arr = array(  
  4. 'firstname' => iconv('gb2312''utf-8''非诚'),  
  5. 'lastname' => iconv('gb2312''utf-8''勿扰'),  
  6. 'contact' => array(  
  7. 'email' =>'fcwr@phpfensi.com',  
  8. 'website' =>'http://www.phpfensi.com',  
  9. )  
  10. );  
  11. //将数组编码成JSON数据格式  
  12. $json_string = json_encode($arr);  
  13. //将JSON格式数据进行解码,解码后不是JSON数据格式,不可用echo直接输出  
  14. $obj = json_decode($json_string);  
  15. //强制转化为数组格式  
  16. $arr = (array$obj;  
  17. //按数组方式调用里面的数据  
  18. echo iconv('utf-8','gb2312',$arr['firstname']);  
  19. echo '</br>';  
  20. //输出数组结构  
  21. print_r($arr);  
  22. ?> 

好了实例就讲到了这里了

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐