搜索最小值时从关联数组返回array_column

问题描述 投票:0回答:1

我有一个循环来填充$ positions数组,如下所示:

array_push($positions, ["id" => $p->id, "distance"=> $distance, "date" => $p->date]);

然后我发现最小键'距离'是这样的:

$min = min(array_column($positions,'distance'));

现在,我想从建立的“距离”中获取对应的“ id”。

我该怎么做?

php arrays min
1个回答
0
投票

未经测试:

$distances = array_column($positions,'distance', 'id');
$min = min($distances);
$id = array_search($min, $distances);

这将获取距离并使用id值作为键创建一个新数组。然后,它获得最小值,并使用它来搜索与其对应的密钥。

我不确定如果您有多个具有相同最小值的项目,结果将是什么,因此您应该进行测试。

© www.soinside.com 2019 - 2024. All rights reserved.