php利用嵌套数组拼接与解析json的方法
利用嵌套数组 拼接混合json-包含对象数组
<?php //自PHP5.4起 $array=[ "status"=>"0", "message"=>"ok", "arr"=>[] ]; classPerson{ public$name; public$age; //定义一个构造方法初始化赋值 publicfunction__construct($name,$age){ $this->name=$name; $this->age=$age; } } for($i=0;$i<10;$i++) { $p=newPerson("ren",$i); $array["arr"][]=$p; } //var_dump($array); echojson_encode($array); ?>
php利用嵌套数组 解析混合json 包含对象数组
<?php functionjson_to_array($web){ $arr=array(); foreach($webas$k=>$v){ if(is_object($v))$arr[$k]=json_to_array($v);//判断类型是不是object else$arr[$k]=$v; } return$arr; } $s='{"webname":"homehf","url":"www.homehf.com","qq":"744348666"}'; //将字符转成JSON $web=json_decode($s); $arr=array(); foreach($webas$k=>$v) $arr[$k]=$v; echo"<pre>"; print_r($arr); echo"</pre>"; $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}'; $web=json_decode($s); $arr=json_to_array($web); echo"<pre>"; print_r($arr); echo"</pre>"; /************************************************************************ ************************************************************************/ $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}'; $web=json_decode($s); echo'网站名称:'.$web->webname.'<br/>网址:'.$web->url.'<br/>联系方式:QQ-'.$web->contact->qq.'MAIL:'.$web->contact->mail; echo'<br/><br/>'; /************************************************************************ ************************************************************************/ $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}'; $web=json_decode($s); echojson_encode($web); $mys='{"status":"0","message":"ok","arr":[{"name":"ren","age":0},{"name":"ren","age":1},{"name":"ren","age":2}, {"name":"ren","age":3},{"name":"ren","age":4},{"name":"ren","age":5},{"name":"ren","age":6},{"name":"ren","age":7}, {"name":"ren","age":8},{"name":"ren","age":9}]}'; $myweb=json_decode($mys); echo$myweb->status; for($i=0;$i<10;$i++) { echo$myweb->arr[$i]->age; echo'<br/><br/>'; } ?>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。