Php 在关联数组中查找最大值

Php 在关联数组中查找最大值,php,Php,我有一个关联数组: $users[0] = array('name' => 'Jim', 'depth' => '1', 'bk_id' => '9'); $users[1] = array('name' => 'Jill', 'depth' => '3', 'bk_id' => '10'); $users[2] = array('name' => 'Jack', 'depth' => '7', 'bk_id' => '17'); 我

我有一个关联数组:

$users[0] = array('name' => 'Jim', 'depth' => '1', 'bk_id' => '9'); 
$users[1] = array('name' => 'Jill', 'depth' => '3', 'bk_id' => '10'); 
$users[2] = array('name' => 'Jack', 'depth' => '7', 'bk_id' => '17'); 
我想知道一种查找具有最大或最大深度值的数组索引的方法


非常感谢您的任何建议。

只需重复并查看最大值:

var max = 0, maxIndex = -1;
for(var i=0;i<users.length;i++) {
   if(parseInt(users[i].depth,10) > max) {
      max = users[i].depth;
      maxIndex = i;
   }
}
console.log("Your maximum depth is %d at index %d", max, maxIndex);
var max=0,maxIndex=-1;
对于(变量i=0;i最大值){
max=用户[i]。深度;
maxIndex=i;
}
}
log(“索引%d处的最大深度为%d”,max,maxIndex);

由于问题不清楚,下面介绍如何使用PHP找到它

foreach ($users as $index => $user) {
  if (!isset($maxdepth)) {
    $maxdepth = $user['depth'];
    $maxindex = $index;
  }
  else {
    if ($user['depth']) > $maxdepth) {
       $maxindex = $index;
       $maxdepth = $user['depth'];
    }
}
echo "Index: $maxindex";
从PHP:

$index = 0;
$max = 0;

for ($i = 0; $i < count($users); $i++) {
    if ($users[$i]['depth'] > $max) {
        $max = $users[$i]['depth'];
        $index = $i;
    }
}

echo $users[$index]['name'] . ' has the greatest depth.';
$index=0;
$max=0;
对于($i=0;$i$max){
$max=$users[$i]['depth'];
$index=$i;
}
}
echo$users[$index]['name'].'具有最大的深度。”;

您可以迭代每次查看深度值的所有键值对,或者使用自定义排序函数对
$users
数组进行排序,如
sort_func(){return a.depth-b.depth}
使用本机排序函数

function getDeepestItem(arr)
{
    arr.sort(function(a,b){return a['depth'] < b['depth'];});
    return arr[0]
}
函数getDeepestItem(arr) { sort(函数(a,b){返回a['depth']这是PHP代码,不是JavaScript或jQuery。添加了标记。您是想在数据结构被编码为JSON然后由JS解析后使用JS查找您想要的数据,还是想在不涉及JS或JSON的情况下使用PHP查找数据?我希望数据以JS返回。然后我仍然不知道问题是什么,但有一种不可思议的感觉,它属于“过于宽泛”。我建议你修改它,这样你就可以问一个你一直坚持的具体问题。OP声称正在寻找具有最大深度的记录索引。