php json 解析数据_php 解析json

今天做项目的时候需要用到json数组,解析时遇到了个小小的麻烦,特此将解决办法记下:

json数据如下:

{

"code":200,

"message":"ok",

"data":[

{

"id":78,

"title":"模糊",

"description":"垃圾",

"type":1,

"fee":3,

"senderPhone":"5534964615",

"sender":29,

"receiver":null,

"sendTime":"2016-03-24 16:59:37",

"endTime":"2016-02-24 17:06:00",

"longtitude":118.940289,

"latitude":32.126177,

"finished":0

},

{

"id":77,

"title":"后门拿货",

"description":"一箱水果",

"type":1,

"fee":1,

"senderPhone":"",

"sender":29,

"receiver":null,

"sendTime":"2016-03-24 11:26:15",

"endTime":"2016-02-24 11:33:00",

"longtitude":118.940289,

"latitude":32.126177,

"finished":0

},

{

"id":76,

"title":"",

"description":"",

"type":1,

"fee":1,

"senderPhone":"",

"sender":29,

"receiver":null,

"sendTime":"2016-03-24 11:25:02",

"endTime":"2016-02-24 11:32:00",

"longtitude":118.940289,

"latitude":32.126177,

"finished":0

},

{

"id":75,

"title":"",

"description":"",

"type":1,

"fee":1,

"senderPhone":"",

"sender":29,

"receiver":null,

"sendTime":"2016-03-24 11:24:58",

"endTime":"2016-02-24 11:32:00",

"longtitude":118.940289,

"latitude":32.126177,

"finished":0

},

{

"id":74,

"title":"jsddhdgg",

"description":"纷纷打电话和的",

"type":1,

"fee":3,

"senderPhone":"66485648866",

"sender":29,

"receiver":null,

"sendTime":"2016-03-08 12:34:09",

"endTime":"2016-02-08 12:40:00",

"longtitude":118.940905,

"latitude":32.126506,

"finished":0

}

]

}

首先讲讲如何获取上面数据中

code 和 message 的方法

其实很简单:

我们将他们赋值给一个变量叫data

$json_string = 'http://52.88.220.193:81/lists.php';//获得json的url

$data = curl_file_get_contents($json_string);//通过方法获得json串

想要拿到code的值:

//对data进行编码

$obj = json_decode($data);

//获得code 值

$code = $obj->code;

$message = $obj->message;

如何拿到data下面的id的值呢?

也很简单:

//data[0] 表示data下第0组 ,下面的意思是第0组的id的值

$arr = $obj->data[0]->id;

其他内容如 title ,type等取法相同

既然取的方法一样 我是不是可以通过循环来做呢?当然可以

不过这里我们知道数据是有5组如果并不知道有几组要如何获取

data有几组数据呢?

用count()方法么?经过测试这个方法似乎并不行,(本人电脑测试,限于环境等因素,不代表所有都不行,可能其他人可以)

我的方法是:先将data的所有数据赋给一个变量,然后使用count()方法计算此数组的大小,事实证明是可行的;:)

$obj = json_decode($data);

$size2 = $obj->data;

$size2 = count($size2);

echo 'data :'.$size2.'
';//显示数组长度

Xamarin.Android下获取与解析JSON

一.新建项目 1.新建一个Android项目,并命名为为NetJsonList 2.右击引用,选择添加引用,引用System.Json.dll 二.同步请求 既然是跨平台,我们自然不能按照java下的 ...

使用Newtonsoft.Json.dll(JSON.NET)动态解析JSON、.net 的json的序列化与反序列化(一)

在开发中,我非常喜欢动态语言和匿名对象带来的方便,JSON.NET具有动态序列化和反序列化任意JSON内容的能力,不必将它映射到具体的强类型对象,它可以处理不确定的类型(集合.字典.动态对象和匿名对象 ...

阶段一:通过网络请求,获得并解析JSON数据(天气应用)

“阶段一”是指我第一次系统地学习Android开发.这主要是对我的学习过程作个记录. 在上一篇阶段一:解析JSON中提到,最近在写一个很简单的天气预报应用.即使功能很简单,但我还是想把它做成一个相对完 ...

阶段一:解析JSON

“阶段一”是指我第一次系统地学习Android开发.这主要是对我的学习过程作个记录. 最近学到解析JSON格式的网络数据,而作业也要求自己找一个天气预报的API地址,然后解析其中JSON格式的数据.可 ...

C语言创建及解析Json的使用法则

参考原文:http://blog.csdn.net/xukai871105/article/details/33013455 JSON(JavaScriptObject Notation)是一种轻量级 ...

不一样的dynamic解析json 万能方法

写过javascript的人都知道js解析json 1:(JSON) 字符串转换为对象. var str = '{"name":"lsw","hobb ...

C# 解析JSON的几种办法

欲成为海洋大师,必知晓海中每一滴水的真名. 刚开始只是想找一个转换JSON数组的方法,结果在MSDN翻到一大把. 搜索过程中免不了碰到一大堆名词:WCF => DataContract =&gt ...

eval解析JSON中的注意点

在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery ...

C#解析json文件的方法

C# 解析 json JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集. JSON采用完全独立于语言的 ...

WP8解析JSON格式(使用DataContractJsonSerializer类)(推荐)

DataContractJsonSerializer是.NET自带的类,在解析JSON格式的时候使用起来方便快捷,至于生成方面由于暂时没用到就没去看了.使用需要引用System.Runtime.Ser ...

随机推荐

(顺序表的应用5.4.3)POJ 1012(约瑟夫环问题——保证前k个出队元素为后k个元素)

/* * POJ-1012.cpp * * Created on: 2013年10月31日 * Author: Administrator */ #include # ...

Sqlserver 正则替换函数的一种实现

--函数 IF OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL DROP FUNCTION dbo.RegexReplace GO CREATE FUNCTION ...

【Espruino】NO.03 从点灯开始

http://blog.csdn.net/qwert1213131/article/details/26819773 本文属于个人理解,能力有限,纰漏在所难免,还望指正! [小鱼有点电] 点灯程序应该 ...

解决linux AMR转MP3出现转码成功却无法播放的问题

根据帖子:http://blog.csdn.net/z313731418/article/details/50218341  的提示,在linux安装ffmpeg,确实在linux下使用命令可以将am ...

系统学习DOM事件机制

本文将从以下几个方面介绍DOM事件: 基本概念:DOM事件的级别 DOM事件模型,事件流 描述DOM事件捕获的具体流程 Event对象的常见应用 自定义事件 DOM事件的级别 //DOM0 eleme ...

c#开发wps插件(2)

上一篇,我们谈了插件开发原理,现在该是应用原理的时候了.工欲善其事必先利其器,首先安装wps 2016专业版,然后再开发. 第一步:打开vs2010,新建一个类库项目,项目结构如下: 说明:其中Res ...

D. Too Easy Problems

链接 [http://codeforces.com/group/1EzrFFyOc0/contest/913/problem/D] 题意 给你n个题目,考试时间T,对于每个问题都有一个ai,以及解决所 ...

git bash 报错bash: *: command not found

默认安装的git bash某些功能是没有的,比如zip,在git bash下执行zip和unzip命令时会报错命令找不到,但值得庆幸的是,我们可以安装我们需要的命令,以下以zip命令为例,步骤如下: ...

2019.02.09 bzoj2839: 集合计数(容斥原理)

传送门 题意简述:对于一个有N个元素的集合在其2^N个子集中取出若干集合(至少一个),使得它们的交集的元素个数为K,求取法的方案数. 思路:考虑枚举相交的是哪kkk个,有CnkC_n^kCnk​种方案 ...

设置vue启动项目后默认显示的页面

通过配置路由,可以设置vue项目启动后默认显示的页面.路由的path设置为path:"/",启动项目后就会显示默认的组件页面. import Vue from 'vue' impo ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值