PHP JSON转数组

WBOY
WBOYoriginal
2016-07-25 09:10:311277parcourir
  1. $s='{"webname":"homehf","url":"www.homehf.com","qq":"744348666"}';

  2. $web=json_decode($s); //将字符转成JSON
  3. $arr=array();
  4. foreach($web as $k=>$w) $arr[$k]=$w;
  5. 前三行可以用$web=json_decode($s,true)代替;

  6. print_r($arr);

  7. ?>
复制代码

上面代码中,已经将一个JSON对象转成了一个数组,可是如果是嵌套的JSON,上面的代码显然无能为力了,那么我们写一个函数解决嵌套JSON,

  1. function json_to_array($web){

  2. $arr=array();
  3. foreach($web as $k=>$w){
  4. if(is_object($w)) $arr[$k]=json_to_array($w); //判断类型是不是object
  5. else $arr[$k]=$w;
  6. }
  7. return $arr;
  8. }
  9. $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}';

  10. $web=json_decode($s);
  11. $arr=json_to_array($web);
  12. //上一行可以用$web=json_decode($s,true)代替;

  13. print_r($arr);
  14. ?>
复制代码

自定义的json_to_array()方法可以将任何嵌套的JSON转成数组。



Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:smarty分页的例子 Article suivant:php小数转换百分数的函数