我有这个数组以这种格式存储数组中的值
Array
(
[0] => 0,20
[1] => 21,50
[2] => 201,300
[3] => 301,400
)
现在我如何找到它中最小和最大的数值?
答案 0 :(得分:0)
尝试如下:
$final_array = array();
foreach($a as $val)
{
$exploded_val = explode(",",$val);
$final_array[] = $exploded_val[0];
$final_array[] = $exploded_val[1];
}
sort($final_array);
$min = $final_array[0];
$max = $final_array[count($final_array)-1];
echo $min.'>>'.$max;
答案 1 :(得分:0)
我认为你需要最小和最大范围。
对于最小和最大范围,首先遍历数组并替换
<{>},
.
,以便它们成为数字(可比较)。
他们找到了结果数组的min()
和max()
。
找出元素所在的关键字。
现在,使用这些键访问原始数组的元素。
<?php
$org = $result = Array(
'0,20',
'21,50',
'201,300',
'301,400',
);
$result = array_map(function($el) {
return str_replace(',','.',$el); }, $result
);
echo '<pre>';
$minKey = array_search(min($result), $result);
$maxKey = array_search(max($result), $result);
$min2 = $org[$minKey]; // Returns 0,20
$temp = explode(',', $min2);
$min = $temp[0];
echo $min; // Prints 0
echo "<br/>";
$max2 = $org[$maxKey]; // Returns 301,400
$temp = explode(',', $max2);
$max = $temp[1];
echo $max; // Prints 400
?>
答案 2 :(得分:0)
答案 3 :(得分:0)