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 相关文章推荐
在项目中寻找代码的坏命名
Jul 14 PHP
php读取本地文件常用函数(fopen与file_get_contents)
Sep 09 PHP
浅谈php和.net的区别
Sep 28 PHP
php读取txt文件并将数据插入到数据库
Feb 23 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
Aug 15 PHP
学习thinkphp5.0验证类使用方法
Nov 16 PHP
php+redis消息队列实现抢购功能
Feb 08 PHP
PHP实现根据数组某个键值大小进行排序的方法
Mar 13 PHP
PHP实现单条sql执行多个数据的insert语句方法
Oct 11 PHP
php7性能提升的原因详解
Oct 13 PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
Oct 16 PHP
swoole锁的机制代码实例讲解
Mar 04 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
基于mysql的论坛(3)
2006/10/09 PHP
PHP 表单提交给自己
2008/07/24 PHP
比file_get_contents稳定的curl_get_contents分享
2012/01/11 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
JS创建优美的页面滑动块效果 - Glider.js
2007/09/27 Javascript
jQuery建立一个按字母顺序排列的友好页面索引(兼容IE6/7/8)
2013/02/26 Javascript
使用jquery+CSS实现控制打印样式
2014/12/31 Javascript
js实现的简洁网页滑动tab菜单效果代码
2015/08/24 Javascript
jquery+php随机生成红包金额数量代码分享
2015/08/27 Javascript
jQuery绑定事件监听bind和移除事件监听unbind用法实例详解
2016/01/19 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
bootstrap模态框垂直居中效果
2016/12/03 Javascript
基于Nodejs利用socket.io实现多人聊天室
2017/02/22 NodeJs
微信小程序 出现47001 data format error原因解决办法
2017/03/10 Javascript
vue-quill-editor实现图片上传功能
2017/08/08 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
2017/12/12 Javascript
vue filters的使用详解
2018/06/11 Javascript
每周一练 之 数据结构与算法(Stack)
2019/04/16 Javascript
原生js实现弹幕效果
2020/11/29 Javascript
[50:27]Secret vs VG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python实现支持目录FTP上传下载文件的方法
2015/06/03 Python
详解Python中的__getitem__方法与slice对象的切片操作
2016/06/27 Python
Python3安装Scrapy的方法步骤
2017/11/23 Python
利用numpy实现一、二维数组的拼接简单代码示例
2017/12/15 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
2020/04/23 Python
Python面向对象之静态属性、类方法与静态方法分析
2018/08/24 Python
python使用插值法画出平滑曲线
2018/12/15 Python
Python简易计算器制作方法代码详解
2019/10/31 Python
django执行原始查询sql,并返回Dict字典例子
2020/04/01 Python
曼联官方网上商店:Manchester United Direct
2017/07/28 全球购物
历史学专业推荐信
2013/11/06 职场文书
秋季运动会表扬稿
2014/01/16 职场文书
高中生班主任评语
2014/04/25 职场文书
创业女性典型材料
2014/05/02 职场文书
2015年招生工作总结
2015/05/04 职场文书
React forwardRef的使用方法及注意点
2021/06/13 Javascript