本文目录一览:
- 1、php 获取二位数组中某一个元素最小的值
- 2、PHP数组中,求差值最小的两个数
- 3、PHP如何取二维数组中的某列的最大值和最小值?
- 4、PHP里获取一维数组里的最大值和最小值?要求,效率最好,速度最快
- 5、PHP array max min (返值不正确,我已器死在厕所)
php 获取二位数组中某一个元素最小的值
这个题有两个思路:
第一个是自己写个排序算法,将二维数组按照指定的键排序,如persiods,这样的方法网上多的是,大致过程如下(自己修改验证,我这里不是很方便进行运行):
// 使用冒泡排序法进行排序
function sortMultiArray($arr, $key) {
$len = count($arr);
for ($i=0; $i$len-1; $i++) {
for ($j=$i+1; $j$len; $j++) {
if ($arr[$i][$key] $arr[$j][$key]) {
$tmp = $arr[$i][$key];
$arr[$i][$key] = $arr[$j][$key];
$arr[$j][$key] = $tmp;
}
}
}
return $arr;
}
然后把你的参数传进去,取第一个就可以了。
第二种方式就简单了,如果这种操作不通用,或者你只运行一次,下面的方法就简单多了:
// 首先我们假设最下的是$min,默认是null
$min = null;
// $arr是你要处理的数据
$arr = array(...);
// 然后遍历就可以了
$len = count($arr);
for ($i=0; $i$len; $i++){
if ($i==0){
$min = $arr[$i];
continue;
}
if ($arr[$i]['persiods']$min['persiods']){
$min = $arr[$i];
}
}
// 最后这个$min就是你要的了
PHP数组中,求差值最小的两个数
?php
@header("Content-Type:text/html; charset=UTF-8");$arr = array();
$pr = array();$length = rand(10,100); //设定数组元素个数
for ($i=0;$i=$length;$i++){
$arr[] = rand(1,10000);
echo $arr[$i].'br/';
}$min = 10000;for ($i=0;$i$length;$i++){
for ($j=$i+1;$j=$length;$j++){
$s = abs($arr[$i]-$arr[$j]);
if($min=$s){
if($min$s)$pr=array();
$min = $s;
$pr[]=$arr[$i]." ".$arr[$j].' 差值:'.$s; //差值最小时 存入数组
}
}
}for ($i=0;$icount($pr);$i++){
echo $pr[$i].'br/';
}
echo '共有'.count($pr).'种方案br/';
?
PHP如何取二维数组中的某列的最大值和最小值?
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php,定义一个二维数组,以取第2列的最值为例。
2、在index.php中,输入代码:
$a=[
[11,5,24,8,3],
[3,54,78,64,9],
];
echo'max='.max($a[1]).'br/';
echo'min='.min($a[1]);
3、浏览器运行index.php页面,此时发现第2列的最大值和最小值都被取出了。
PHP里获取一维数组里的最大值和最小值?要求,效率最好,速度最快
还有什么会比PHP的方法高效?
最大的
?php
$a=array('1','3','55','99');
$pos = array_search(max($a), $a);
echo $a[$pos];
最小的
?php
$a=array('1','3','55','99');
$pos = array_search(min($a), $a);
echo $a[$pos];
PHP array max min (返值不正确,我已器死在厕所)
因为你组装数组的时候就没写对啦,往里面放元素为什么要拼接换行符br/,看下图,上一行是运行正常的结果,下一行就是像你那样错误的结果