实现步骤:1、利用min()函数获取数组中最小的元素值,语法“$min=min($arr);”;2、使用array_search()函数在数组中搜索获取的最小值,会返回对应的下标值,语法“array_search($min,$arr)”。
php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
分析:php求数组中最小的元素值和下标可以分成两步
获取数组的最小的元素值(最小值)
根据最小值来求该值在数组的对应下标(键名)
下面就来给大家具体介绍一下实现步骤。
步骤1:获取数组的最小值
PHP获取数组最值有多种方法,例如排序(升序或降序),这样开头或结尾的元素就是最值。【相关推荐:php怎么求数组当中的最小值】
但因为还要获取其下标,那么排序就不一定可选(可能会破坏其原有顺序)。
那么我们就直接利用内置函数--min()好了。
<?php
header('content-type:text/html;charset=utf-8');
$arr=array(1,45,9,0,-5,52,21,-1,40);
var_dump($arr);
$min=min($arr);
echo "数组最小值为: ".$min."<br>";
?>
登录后复制
步骤2:根据最小值来求该值在数组的下标(键名)
PHP提供了一个内置函数--array_search()
该函数可以在数组中搜索给定的值,如果成功则返回相应的键名(下标)。
$index=array_search($min,$arr);
echo "最小值的下标为:".$index;
登录后复制
将功能封装为一个函数:
function f($arr){
$min=min($arr);
echo "数组最小值为: ".$min."<br>";
$index=array_search($min,$arr);
echo "最小值的下标为:".$index;
}
登录后复制
调用f($arr)即可:
$arr=array(1,2,3);
var_dump($arr);
f($arr);
$arr=array(1,0,1);
var_dump($arr);
f($arr);
登录后复制
函数说明:
1、min()函数
min() 函数返回一个数组中的最小值,或者几个指定值中的最小值。
min(array_values);
or
min(value1,value2,...);
登录后复制
返回值:数值最小值。
注:想要求最大值,则可使用max() 函数。
2、array_search()函数
array_search() 函数在数组中搜索某个键值,并返回对应的键名。
array_search(value,array,strict)
登录后复制
- true
- false - 默认
返回值:如果在数组中找到指定的键值,则返回对应的键名,否则返回 FALSE。如果在数组中找到键值超过一次,则返回第一次找到的键值所匹配的键名。
推荐学习:《PHP视频教程》、《PHP ARRAY》
以上就是php怎么求数组中最小的元素值和下标的详细内容,更多请关注自由互联其它相关文章!