我试图获取具有最小值的数组的键和值。
这是我的代码。
我有空值变量
我想要非空的值和值,我需要一个键和值min
来自数组或任何其他模式(如果可能的话)。
<?php
$serial_sale_price ='2';
$promo_sale_price ='';
$inv_sale_price ='300.00';
$price_search_seq = 'B';
//validate for 0 values
if($serial_sale_price!='' && $serial_sale_price==0)
{
$serial_sale_price='0.00';
}
if($promo_sale_price!='' && $promo_sale_price==0)
{
$promo_sale_price='0.00';
}
if($inv_sale_price!='' && $inv_sale_price==0)
{
$inv_sale_price='0.00';
}
$remove_empty = array('S'=>$serial_sale_price,
'P'=>$promo_sale_price,
'I'=>$inv_sale_price);
$find_min = array_filter($remove_empty); // Array which required in
echo "<pre>";
print_r($find_min);
$sale_price = min($find_min);//Minimum Price for the array
$price_rule = '';//here i want to get the key which have min value
echo "sales price:$sale_price,price_rule:$price_rule";
如何一次获取最小值的键和最小值的键。 从我的例子中我所期待的是什么。 如果最小值为 serial_sales_price ,则密钥为&#39; <&#39; ,值为 2
答案 0 :(得分:0)
// Sample by PHP Method
$var = array_keys($remove_empty , min($remove_empty ));
//$var[0] for letest key have minimum value.
//This function returns the key for the minimum value.
function getMinKey( $array )
{
$min = 0;
$key = '';
foreach( $array as $k => $v )
{
$min = min($array);
}
foreach( $array as $k => $v )
{
if($min == $v)
{
$key = $k;
}
}
return $key;
}
echo getMinKey($remove_empty); // for min value key;