Php foreach最大数组值?

Php foreach最大数组值?,php,arrays,max,Php,Arrays,Max,我对php相当陌生,我对循环有问题。我有一个foreach循环 foreach ($contents as $g => $f) { p($f); } 这会根据我有多少内容给出一些数组。目前我有两个, Array ( [quantity] => 1 [discount] => 1 [discount_id] => 0 [id] => 1506 [cat_id] => 160 [price] => 89

我对php相当陌生,我对循环有问题。我有一个foreach循环

foreach ($contents as $g => $f)
{
  p($f);
}
这会根据我有多少内容给出一些数组。目前我有两个,

Array
(
    [quantity] => 1
    [discount] => 1
    [discount_id] => 0
    [id] => 1506
    [cat_id] => 160
    [price] => 89
    [title] => კაბა
)

Array
(
    [quantity] => 1
    [discount] => 1
    [discount_id] => 0
    [id] => 1561
    [cat_id] => 160
    [price] => 79
    [title] => ზედა
)
我的目标是将包含最大价格的数组保存为另一个变量。我有点纠结于如何做到这一点,我用
max()
函数找到了最大价格,就像这样

foreach ($contents as $g => $f)
{

    $priceprod[] = $f['price'];
    $maxprice = max($priceprod);
   p($maxprice);
}

但是我仍然不知道我应该如何找出哪个数组是最大价格。如有任何建议,将不胜感激。

请检查环路外阵列的最大功能

foreach ($contents as $g => $f)
{

    $priceprod[] = $f['price'];

}
$maxprice = max($priceprod);
p($maxprice);

您还应存储密钥,以便在循环后查找:

$priceprod = array();

foreach ($contents as $g => $f)
{
  // use the key $g in the $priceprod array
  $priceprod[$g] = $f['price'];
}

// get the highest price
$maxprice = max($priceprod);

// find the key of the product with the highest price
$product_key = array_search($maxprice, $priceprod);

$product_with_highest_price = $contents[$product_key];

请注意,如果有多个产品具有相同的价格,则结果将不可靠。

这里有一个单循环解决方案,用于处理具有相同最高价格的多个项目

$maxPrice = - INF;
$keys = [];
foreach($contents as $k=>$v){
    if($v['price']>$maxPrice){
        $maxPrice = $v['price'];
        $keys = [$k];
    }else if($v['price']==$maxPrice){
        $keys[] = $k;
    }
}

我想我的问题问错了,目的是将包含max price的数组保存为另一个变量供以后使用。p($max price)的p()是什么?这正是我需要的,非常感谢。以后可能会找到相同价格的解决方案。谢谢