PHP最小值和最大值与数组,是否可靠?
这是可行的,但它可靠吗?由于MAINarray包含另一个包含2个值的数组,min应在MAINarray中工作,并在其子数组中找到最低值,因此它是否始终有效PHP最小值和最大值与数组,是否可靠?,php,arrays,logic,Php,Arrays,Logic,这是可行的,但它可靠吗?由于MAINarray包含另一个包含2个值的数组,min应在MAINarray中工作,并在其子数组中找到最低值,因此它是否始终有效 $a[0]=array(0=>522,1=>'Truck'); $a[1]=array(0=>230,1=>'Bear'); $a[2]=array(0=>13,1=>'Feather'); $a[3]=array(0=>40,1=>'Rabit'); $z=min($a);$y=max($a)
$a[0]=array(0=>522,1=>'Truck');
$a[1]=array(0=>230,1=>'Bear');
$a[2]=array(0=>13,1=>'Feather');
$a[3]=array(0=>40,1=>'Rabit');
$z=min($a);$y=max($a);
echo "The easiest is ".$z[1]." with only ".$z[0]." pounds!<br>";
echo "The heaviest is ".$y[1]." with ".$y[0]." pounds!";
$a[0]=数组(0=>522,1=>'Truck');
$a[1]=数组(0=>230,1=>Bear');
$a[2]=数组(0=>13,1=>Feather);
$a[3]=数组(0=>40,1=>Rabit');
$z=最小值($a)$y=最大值($a);
echo“最简单的是“$z[1]”,只有“$z[0]”英镑!
”;
回声“最重的是“$y[1]”和“$y[0]”磅;
你说什么?我不确定这是否总是有效的。如有疑问,请自行执行该功能:
function extremes($array, $key=0) {
if (count($array) === 0) return null;
$min = $max = null;
foreach ($array as &$val) {
if (!isset($val[$key])) continue;
if ($min > $val[$key]) $min = $val[$key];
else if ($max < $val[$key]) $max = $val[$key];
}
return array($min, $max);
}
$a = array(array(522, 'Truck'), array(230, 'Bear'), array(13, 'Feather'), array(40, 'Rabit'));
list($z, $y) = extremes($a);
函数极值($array,$key=0){
if(count($array)==0)返回null;
$min=$max=null;
foreach($array as&$val){
如果(!isset($val[$key])继续;
如果($min>$val[$key])$min=$val[$key];
else if($max<$val[$key])$max=$val[$key];
}
返回数组($min,$max);
}
$a=数组(数组(522,‘卡车’)、数组(230,‘熊’)、数组(13,‘羽毛’)、数组(40,‘兔子’));
列表($z,$y)=极端($a);
我能找到的唯一证据表明,它旨在使用数组数组进行比较,这是一个用于改进php文档的错误报告
尽管如此,他们不太可能删除此功能,因为它必须通过递归方式比较已经存在的数组。在使用函数时,参数列表本身通常是一个数组,因为参数的数量不是有限的。是的,它是可靠的。可以安全地假设
min(数组(1,2,…,n))
等同于min(1,2,…,n)
,并且具体介绍了min
如何比较多个数组:
// With multiple arrays, min compares from left to right
// so in our example: 2 == 2, but 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)
//对于多个数组,min从左到右进行比较
//在我们的例子中:2==2,但4<5
$val=min(数组(2,4,8),数组(2,5,1));//阵列(2,4,8)
我对min
如何处理您的输入类型的理解是:
我没有这些信息的来源,但我记得它是如何工作的。我说,自己测试它会产生最有益的结果。这是一种黑客行为。很好的修复,但没有什么可以建立的。@Dagon在我写它的时候,我测试了它:D lol@user。。。。我用10000个数据对它进行了测试,结果总是很好。这和最小和最大函数的作用是一样的。。。不是吗?对。。。我刚刚试过。。。你是对的$a[0]=数组(0=>522,1=>Truck')$a[1]=数组(0=>230,1=>'Bear',2=>'au');卡车比熊容易。。。谢谢你,康福斯!;)
array(
array(1, "A"),
array(2), // min
)
array(
array(1, "A"), // min
array(2, "A"),
)
array(
array(1, "Z"),
array(1, "A"), // min
)