当前位置:首页 > PHP教程 > php应用 > 列表

JSON PHP中,Json字符串反序列化成对象/数组的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-09-23 16:48:38 浏览: 评论:0 

今天小编就为大家分享一篇JSON PHP中,Json字符串反序列化成对象/数组的方法,具有很好的参考价值,希望对大家有所帮助,一起跟随小编过来看看吧。

如下所示:

  1. <?php 
  2. //php反编码解析json信息 
  3. //json_decode(json字符串); 
  4. $city = array('shandong'=>'jinan','henan'=>'zhengzhou','hebei'=>'shijiazhuang'); 
  5. $jn_city = json_encode($city); 
  6. //反编码json 
  7. $fan_city = json_decode($jn_city,false);//第二个参数false则返回object类型,false可以默认不写 
  8. var_dump($fan_city);//object(stdClass)#1 (3) { ["shandong"]=> string(5) "jinan" ["henan"]=> string(9) "zhengzhou" ["hebei"]=> string(12) "shijiazhuang" }  
  9. echo "<br />"
  10. $fan_city = json_decode($jn_city,true);//第二个参数true则返回array类型 
  11. var_dump($fan_city);//array(3) { ["shandong"]=> string(5) "jinan" ["henan"]=> string(9) "zhengzhou" ["hebei"]=> string(12) "shijiazhuang" } 

手动写的JSON字符串一定要用单引号才能成功反序列化成对象/数组:

  1. <?php  
  2.    
  3. //json信息反编码  
  4.    
  5. //不同php版本,对“纯json字符串”解析存在问题  
  6. //使用双引号定义的json字符串反编码操作变为null  
  7. //$jn = "{'name':'tom','age':'20','addr':'beijing'}";  
  8. //$fan_jn = json_decode($jn,true);  
  9. //var_dump($fan_jn);//NULL  
  10.    
  11. //使用单引号定义的json字符串反编码操作会成功  
  12. $jn = '{"name":"tom","age":"20","addr":"beijing"}';  
  13. $fan_jn = json_decode($jn,true);  
  14. var_dump($fan_jn);

Tags: Json反序列化 Json对象

分享到: