请问PHP如何解析这样的json值?如何获取其中某个值内容呢? 代码如下:

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问PHP如何解析这样的json值?如何获取其中某个值内容呢? 代码如下:相关的知识,希望对你有一定的参考价值。


"items": [
"id": 2469,
"name": "3652",
"n_works": 4,
"avatar_url": "url.png",
"user_id": 723820,
"work_subject_id": 484,
"object_id": 260,
"type": "WORKSHOP",
"role": 0,
"position": "LEADER",
"status": 0,
"latest_work_at": 1577687911,
"qq": ""
,
"id": 2823,
"name": "22",
"n_works": 0,
"avatar_url": "url.png",
"user_id": 4262965,
"work_subject_id": 484,
"object_id": 260,
"type": "WORKSHOP",
"role": 0,
"position": "STAFF",
"status": 0,
"latest_work_at": 1578903454,
"qq": ""
],
"offset": 0,
"limit": 40,
"total": 4,
"counted": true

你是php传给前端获取值还是后台PHP获取这个值然后解析?
如果是前端ajax获取的,直接data['参数名']['参数名']就可以了;
如果是后台,需要比如$a = 刚才那个json值,$b = json_decode($a);如果输出echo $b->参数名->参数名;如果解析,$b['参数名']['参数名']追问

后台,这个好像有2组数据,能具体点吗?谢谢
按照你这样输出什么都没有

追答

比如假设$a = 你获取的这个json;
$b = json_decode($a);
那$b就是一个大数组里面两个小数组,两个小数组下标分别是0和1
比如你要想获得某一个name
你可以$b[0]['name']或$b[1]['name'];
如果里面下标不确定,可以用for或foreach进行取值或赋值

追问

那输出怎么办呢,谢谢

追答

你是接口还是方法,什么框架啊,比如thinkphp3.2框架一般这么输出数据到页面,$this->assign('bname(你自己定义的名字随便换)',$b[0]['name']);前端接收是$bname,如果是接口的话看需要返回什么,如果直接返回就是echo,如果返回json串就是echo json_encode(,$b[0]['name']);具体问题具体分析

参考技术A PHP里接收到json值后可以用json_decode()函数将json数据转成对象或数组数据的,转换后就可以用了。

如何使用目标 C 解析 JSON 并获取特定值? [复制]

【中文标题】如何使用目标 C 解析 JSON 并获取特定值? [复制]【英文标题】:How to parse JSON and get particular values using objective C? [duplicate] 【发布时间】:2015-08-28 09:23:08 【问题描述】:

我正在尝试从JSON 下方获取特定数据并存储到NSMutableArray 以加载tableview。现在的问题是我不知道如何获取"names and grade values" 并想存储到NSMutableArray 以供tableview 上市。

response 

   Private  

          0 =  
                  name : nanci,
                  grade : A
              ;  
          1 =  
                  name : nanci,
                  grade : B
              ;  
          
   Public  

          0 =  
                  name : doly,
                  grade : A
              ;  
          1 =  
                  name : mali,
                  grade : B
              ;  
            
         

我的 Tableview 如下所示

----------------------------------
     name           grade
----------------------------------
     doly               A
----------------------------------

请帮助我如何从 JSON 中获取值并存储到 NSMutableArray

【问题讨论】:

【参考方案1】:

试试这种方式从json响应中获取数据

NSMutableDictionary *yourJsonData = yourjsonresponsedata;
    // get private key data
    for (int i=0; i<[[[yourJsonData objectForKey:@"Private"] allKeys] count]; i++) 
        NSLog(@"name = %@",[[[yourJsonData objectForKey:@"Private"] objectForKey:[NSString stringWithFormat:@"%d",i]] objectForKey:@"name"]);
        NSLog(@"Grade = %@",[[[yourJsonData objectForKey:@"Private"] objectForKey:[NSString stringWithFormat:@"%d",i]] objectForKey:@"grade"]);
    

【讨论】:

真棒@Dharmesh ...我可以将这两个值存储到单个 NSMUtableArray 中并希望同时获得私有和公共。实际上,在我的表格视图中,我将创建两个部分,一个用于私有,另一个用于公共。 不,您存储不同的数组,因为您使用两个部分(私有,公共),因此第一个部分的行数数据第一个数组和另一个数组数据用于第二个部分。 @SteveJobs 例如如果我使用搜索..我可以同时使用两个数组吗? 是的,如果您对表格使用两个部分,则使用两个数组。 @SteveJobs 而且你的 json 格式很复杂,请使用这个 json 格式,如此简单的方法来获取数据。 "Private" :[ "name" : "nanci", "grade" : "A" , "name" : "nanci", "grade" : "B" ], "Public" :[ "name" : "nanci", "grade" : "A" , "name" : "nanci", "grade" : "B" ] @SteveJobs

以上是关于请问PHP如何解析这样的json值?如何获取其中某个值内容呢? 代码如下:的主要内容,如果未能解决你的问题,请参考以下文章

如何在javascript中获取从Action中传送过来的一个List集合中的某一个值呢?

如何从 PHP 中获取 JSON 值?

php获得api返回的json数据后,如何解析?

如何从也是 JSON 的 JSON 字段解析值?

请问Java中Map集合如何使用?key值和value值如何用?请说的详细一点

json 的值如果有逗号怎么办