首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用PHP计算具有特定键值对的对象在JSON数组中存在的时间

如何使用PHP计算具有特定键值对的对象在JSON数组中存在的时间
EN

Stack Overflow用户
提问于 2022-04-10 12:50:41
回答 1查看 30关注 0票数 -1

我在PHP中相对较新,我正在努力弄清楚如何使用PHP计算具有特定键值对(例如"name":"John“)的对象在JSON数组中存在的时间,并对其进行回显。下面是我的JSON数据。

代码语言:javascript
复制
{
    "main": {
        "request": "40"
    },
    "data": {
        "page": 1,
        "posts": [
            {
                "id": "1",
                "name": "John Amos",
                "used_id": "A001",
                "info": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam"
            
            },
            {
                "id": "2",
                "name": "Ugon Charles",
                "used_id": "A007",
                "info": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam"
            
            },
            {
                "id": "3",
                "name": "Mary Ann",
                "used_id": "A004",
                "info": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam"
            
            },
            {
                "id": "4",
                "name": "Mary Ann",
                "used_id": "A004",
                "info": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam"
            
            },
            {
                "id": "5",
                "name": "John Amos",
                "used_id": "A001",
                "info": "Sed ut perspiciatis unde omnis iste"
            
            },
            {
                "id": "6",
                "name": "John Amos",
                "used_id": "A001",
                "info": "Ut enim ad minima veniam"
            
            }
            
            
        ]
    }
}

我试过这样的方法;

代码语言:javascript
复制
$uid_counts = array_count_values($data['data']['posts']);
$username = $uid_counts['John Amos'];
echo $uid_counts;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-10 13:10:19

尝尝这个

代码语言:javascript
复制
function countPost(array $arr,$key,$val){
  $count=0;
  foreach($arr as $ar){
    if($ar[$key]==$val){
       $count++;
     }
  }
  return $count;
}

$uid_counts = countPost($data['data']['posts'],'name','John Amos');
echo $uid_counts;

我还没有测试代码,但你知道我的想法了。试一试,它能解决你的问题

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71816766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档