找到php foreach循环的最低值

时间:2017-06-05 22:12:26

标签: php foreach min

我试图提取由以下代码生成的两个数字的较低(但不是0)。此代码循环两次,给出两个数字。我只想要两者中的较低者。我可以看到我应该使用min(数组),但我真的不知道从哪里开始。

foreach ($objResult->ProductGroups as $objProductGroup)
{
    if ($objProductGroup->hasProductQuote)
    {
        foreach ($objProductGroup->ProductQuotes as $objProductQuote)
        {
            if (!$objProductQuote->hasErrors)
            {   
                printf("<div>&pound;%01.2f</div>", $objProductQuote->Figures->RegularPayment);  
                break;
            }
        }
    }
}

1 个答案:

答案 0 :(得分:0)

不要在到达时打印引号,而是将它们附加到数组中。然后您可以使用min打印两者中的较低者。

$quotes = [];
foreach ($objResult->ProductGroups as $objProductGroup)
{
    if ($objProductGroup->hasProductQuote)
    {
        foreach ($objProductGroup->ProductQuotes as $objProductQuote)
        {
            if (!$objProductQuote->hasErrors)
            {
                $quotes[] = $objProductQuote->Figures->RegularPayment;
                break;
            }
        }
    }
}
printf("<div>&pound;%01.2f</div>", min($quotes));