php排序数组和排名特定字段

我试图根据数值输出特定字段(OurPrice)的最低编号.

var_dump结果

$myarray = array_filter($rankresult);
natsort($myarray); 

array(6) { 
    ["Comp7"]=> string(3) "189" 
    ["OurPrice"]=> string(3) "189" 
    ["Comp9"]=> string(6) "198.99" 
    ["Comp6"]=> string(3) "208" 
    ["Comp3"]=> string(6) "226.97" 
    ["Comp4"]=> string(3) "274" 
} 

您会注意到计数*有6个,其中两个是相同的数字,因此它将等于相同的等级(即Comp7和OurPrice都是6个中的1个).

期望的输出:

我们的价格排名= 1的6

解决方法:

尝试使用此代码

 $newarray = (array_unique(array_values($myarray)));
 $rank = array_search($myarray['OurPrice'],$newarray)+1;
 $count = count($myarray));
 echo "Our Price Rank" . $rank . " of " . $count"
上一篇:Elements区块链RPC API文档【Liquid网络】


下一篇:图的应用(一)——最小生成树