php利用嵌套数组拼接与解析json的方法


Posted in PHP onFebruary 07, 2017

利用嵌套数组   拼接混合json -包含对象数组

<?php 
 
// 自 PHP 5.4 起 
$array = [ 
  "status" => "0", 
  "message" => "ok", 
  "arr"=> [] 
]; 
 
class Person {  
  public $name;  
  public $age;  
  
  //定义一个构造方法初始化赋值  
  public function __construct($name,$age) {  
    $this->name=$name;  
    $this->age=$age;  
  }  
}  
  
  
 
for($i=0;$i<10;$i++) 
{ 
  $p=new Person("ren",$i);  
  $array["arr"][]=$p; 
} 
 
//var_dump($array); 
 
echo json_encode($array); 
 
?>

php利用嵌套数组  解析混合json  包含对象数组

<?php  
function json_to_array($web) {  
  $arr=array();  
  foreach($web as $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($web as $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);  
echo json_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 />';  
}  
?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Ha0k 0.3 PHP 网页木马修改版
Oct 11 PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
修改ThinkPHP缓存为Memcache的方法
Jun 25 PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 PHP
PHP用反撇号执行外部命令
Apr 14 PHP
PHP实现事件机制的方法
Jul 10 PHP
php简单获取复选框值的方法
May 11 PHP
PHP入门教程之操作符与控制结构流程详解
Sep 09 PHP
php安全配置记录和常见错误梳理(总结)
Mar 28 PHP
php中钩子(hook)的原理与简单应用demo示例
Sep 03 PHP
Laravel等框架模型关联的可用性浅析
Dec 15 PHP
PHP pthreads v3下同步处理synchronized用法示例
Feb 21 PHP
php获取文件名称和扩展名的方法
Feb 07 #PHP
php 常用的系统函数
Feb 07 #PHP
thinkphp修改配置进入默认首页的方法
Feb 07 #PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
Feb 07 #PHP
PHP封装的多文件上传类实例与用法详解
Feb 07 #PHP
PHP实现对数组分页处理实例详解
Feb 07 #PHP
php实现的读取CSV文件函数示例
Feb 07 #PHP
You might like
一家之言的经验之谈php+mysql扎实个人基本功
2008/03/27 PHP
php实现两个数组相加的方法
2015/02/17 PHP
Json_encode防止汉字转义成unicode的方法
2016/02/25 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
2019/10/18 PHP
再谈Yii Framework框架中的事件event原理与应用
2020/04/07 PHP
JS应用之禁止抓屏、复制、打印
2008/02/21 Javascript
JavaScript 异步调用框架 (Part 1 - 问题 &amp; 场景)
2009/08/03 Javascript
js中的preventDefault与stopPropagation详解
2014/01/29 Javascript
Javascript设计模式之观察者模式的多个实现版本实例
2015/03/03 Javascript
BootStrap框架中的data-[ ]自定义属性理解(推荐)
2017/02/14 Javascript
Javascript封装id、class与元素选择器方法示例
2017/03/13 Javascript
12个非常有用的JavaScript技巧
2017/05/17 Javascript
JQuery 选择器、DOM节点操作练习实例
2017/09/28 jQuery
React Native实现地址挑选器功能
2017/10/24 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
JS实现键值对遍历json数组功能示例
2018/05/30 Javascript
在vue里使用codemirror遇到的问题
2018/11/01 Javascript
Layui数据表格之单元格编辑方式
2019/10/26 Javascript
Angular value与ngValue区别详解
2019/11/27 Javascript
Vue学习之常用指令实例详解
2020/01/06 Javascript
详解vue-template-admin三级路由无法缓存的解决方案
2020/03/10 Javascript
Python中的pprint折腾记
2015/01/21 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
python实现rsa加密实例详解
2017/07/19 Python
解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题
2019/08/23 Python
纯CSS3实现地球自转实现代码(图文教程附送源码)
2012/12/26 HTML / CSS
CSS3之背景尺寸Background-size使用介绍
2013/10/14 HTML / CSS
从零实现一个自定义html5播放器的示例代码
2017/08/01 HTML / CSS
小学教师自我鉴定
2013/11/07 职场文书
岗位廉政承诺书
2014/03/27 职场文书
单位介绍信格式
2015/01/31 职场文书
格林童话读书笔记
2015/06/30 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
js实现模拟购物商城案例
2021/05/18 Javascript
Spring整合Mybatis的全过程
2021/06/28 Java/Android