php怎么求数组下标

两种方法:1、用array_keys,语法“array_keys(数组,搜索值,false|true)”,会返回一个包含下标的数组。2、遍历数组,将下标存入一个空数组,语法“foreach(数组 as $k=>$v){$r[]=$k;}”。

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

数组 array 是一组有序的变量,其中每个值被称为一个元素。每个元素由一个特殊的标识符来区分,这个标识符称为键(也称为下标)。

那么php中怎么求数组下标?下面介绍两种方法。

方法1:直接使用内置函数array_keys()

array_key() 函数可以获取数组中的部分或所有键名(下标),该函数语法格式如下:

array_keys($array,$search_value,$strict)

参数说明如下:

  • $array:必选参数,为待操作的数组;
  • $search_value:可选参数,如果参数为空,则函数会返回数组中的所有键名,如果指定了该参数,则函数就只会返回值为 $search_value 的键名;
  • $strict:可选参数,判断在搜索的时候是否使用严格模式,$strict 默认为 false,也就是非严格模式,在搜索时只比较类型,不比较类型,若将 $strict 设置为 true,也就是严格模式,在搜索时同时比较值和类型,等价于===

array_key() 函数会以数组形式返回得到的数组键名。

示例1:全部键名

<?php
$arr=array("Peter"=>65,"Harry"=>80,"John"=>78,"Clark"=>90);
var_dump($arr);
var_dump(array_keys($arr));
?>

1.png

示例2:指定值的键名

<?php
$arr=array("Peter"=>65,"Harry"=>80,"John"=>78,"Clark"=>90);
var_dump($arr);
var_dump(array_keys($arr,80));
var_dump(array_keys($arr,"80"));
var_dump(array_keys($arr,"80",true));
?>

2.png

方法2:利用foreach语句遍历数组,将键名存入一个空数组

<?php
$arr=array("Peter"=>65,"Harry"=>80,"John"=>78,"Clark"=>90);
var_dump($arr);
$r=[];
foreach($arr as $k=>$v){
	$r[]=$k;
}
var_dump($r);
?>

3.png

推荐学习:《PHP视频教程》

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » php怎么求数组下标