php怎么查询指定值是数组中的第几个元素

青灯夜游
发布: 2022-08-23 19:47:55
原创
3511人浏览过
查询步骤:1、利用array_values()函数重置数组键名,将数组转为索引数组,语法“array_values(数组)”;2、利用array_search()函数获取指定值在索引数组中的位置(索引值+1)即可,语法“array_search("指定值",索引数组)+1”。

php怎么查询指定值是数组中的第几个元素

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

在PHP中,可以使用array_values()和array_search()函数来查询指定值是数组中的第几个元素。

实现步骤:

步骤1:利用array_values()函数将数组转为索引数组

立即学习PHP免费学习笔记(深入)”;

array_values()函数返回包含数组中所有的值的数组。

简单来说,该函数可以重置数组键名,将键名转为从0开始的索引值。

<?php
header('content-type:text/html;charset=utf-8');   
$arr=array("a"=>"aa","b"=>"bb","c"=>"cc","d"=>"dd","e"=>"ee");
var_dump($arr);
$values=array_values($arr);
var_dump($values);
?>
登录后复制

1.png

步骤2:利用array_search()函数获取指定值在索引数组中的位置

array_search() 函数搜索指定键值,并返回对应的键名,即返回对应的索引值。

阿里云-虚拟数字人
阿里云-虚拟数字人

阿里云-虚拟数字人是什么? ...

阿里云-虚拟数字人2
查看详情 阿里云-虚拟数字人

因为索引值是从0开始计数的,和准确位置值之间差值为1;所以将索引值+1即可查询指定值是数组中的第几个元素。

<?php
header('content-type:text/html;charset=utf-8');   
$arr=array("a"=>"aa","b"=>"bb","c"=>"cc","d"=>"dd","e"=>"ee");
var_dump($arr);
$values=array_values($arr);
var_dump($values);
$index=array_search("bb",$values,true)+1;
echo "指定值是数组中的第 $index 个元素";
?>
登录后复制

2.png

将关键代码封装一下:

<?php
header('content-type:text/html;charset=utf-8'); 
function f($a,$s){
	$v=array_values($a);
	$index=array_search($s,$v,true)+1;
	echo "指定值 $s 是数组中的第 $index 个元素<br>";
}

  
$arr=array("a"=>"aa","b"=>"bb","c"=>"cc","d"=>"dd","e"=>"ee");
var_dump($arr);
f($arr,"bb");
f($arr,"aa");
f($arr,"dd");
?>
登录后复制

3.png

说明:

array_search() 函数在数组中搜索某个键值,并返回对应的键名。

array_search(value,array,strict)
登录后复制
参数 描述
value 必需。规定在数组中搜索的键值。
array 必需。规定被搜索的数组。
strict 可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:
  • true
  • false - 默认
如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的(参见实例 2)。
  • 返回值:如果在数组中找到指定的键值,则返回对应的键名,否则返回 FALSE。如果在数组中找到键值超过一次,则返回第一次找到的键值所匹配的键名。    

推荐学习:《PHP视频教程

以上就是php怎么查询指定值是数组中的第几个元素的详细内容,更多请关注php中文网其它相关文章!

相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号