Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 显示特定ID的数组索引号_Php_Arrays - Fatal编程技术网

Php 显示特定ID的数组索引号

Php 显示特定ID的数组索引号,php,arrays,Php,Arrays,我有一个数组,我正在使用php 这是json数组 { "score":[ { "userId":"5", "playtime":"1396435708", "score":"234" }, { "userId":"5", "playtime":"1396369254", "score":"25"

我有一个数组,我正在使用php

这是json数组

{

    "score":[
        {
            "userId":"5",
            "playtime":"1396435708",
            "score":"234"
        },
        {
            "userId":"5",
            "playtime":"1396369254",
            "score":"25"
        },
        {
            "userId":"4",
            "playtime":"1396369056",
            "score":"12"
        },
        {
            "userId":"7",
            "playtime":"1396369246",
            "score":"2"
        },
        {
            "userId":"6",
            "playtime":"1396369240",
            "score":"1"
        }
    ],
    "MyPosition":"2"
}
这里,对于userId=5,myposition仅显示2

但它将是1和2

我目前正在使用此代码

foreach($leadBoard as $key=>$value) {
    if($value['user_id'] == $userId) {

        $myposition=$key+1;
    }
}

如何显示所有位置

如果您想要多个位置,我建议使用数组

 $myposition = array();
 foreach($leadBoard as $key=>$value) {
      if($value['user_id'] == $userId) {
           array_push($myposition,$key);
      }
 }

之后,您可以在此位置数组上循环或将其内爆为单个字符串,具体取决于您要使用它执行的操作。

您需要使用数组(
$myposition=array();
)来保存位置,而不仅仅是单个变量<代码>$myposition[]=$key+1你到底在问什么还不太清楚。。。请添加所需的输出,以便我们可以看到示例“MyPosition”:[“”、“1”、“2”]使用您的代码显示“”项@RocketHazmat@user3490043:它对我有效:(注意你的JSON有
userId
,但是你的
foreach
userId