array_keys是PHP语言中的一个数组函数,用于返回数组中的所有键名(即数组索引)或者其中某个值出现的所有键名。
语法:
array_keys ( array $array [, mixed $search_value = null [, bool $strict = false ]] ) : array
参数解释:
- $array:必需。表示需要获取键名的数组。
- $search_value:可选。一个要查找的值。如果指定了这个参数,只有键值为这个值的键名会被返回。
- $strict:可选。设置是否执行严格比较,即比较键名和搜索值的类型是否相同。如果为true,则表示类型需要完全相同才能被返回,默认为false。
实例:
假设我们有一个数组:
$fruits = array(“apple”, “banana”, “orange”, “banana”, “grape”);
我们可以使用array_keys函数获取该数组的所有键名,如下所示:
$keys = array_keys($fruits);
print_r($keys);
输出结果为:
Array
(
[0] => 0
[1] => 1
[2] => 2
[3] => 3
[4] => 4
)
这个结果表明,该数组中的键名分别为0、1、2、3、4。
我们也可以使用array_keys函数获取该数组中所有值为“banana”的键名,如下所示:
$keys = array_keys($fruits, “banana”);
print_r($keys);
输出结果为:
Array
(
[0] => 1
[1] => 3
)
这个结果表明,该数组中值为“banana”的键名分别为1和3。
如果我们将$strict参数设置为true,我们可以确保类型相同的键名也可以被返回。如下所示:
$keys = array_keys($fruits, 1, true);
print_r($keys);
输出结果为空数组。这是因为,该数组中的键名都是字符串类型而不是整数类型,因此即使值为1的键名存在,也无法被返回。
总之,array_keys函数是一个非常有用的函数,可以用于快速获取数组中的键名或特定键值的键名。
array_keys函数是 PHP 语言中用于获取数组中所有键名的函数。它的语法结构如下:
array array_keys ( array $array [, mixed $search_value = null [, bool $strict = false ]] )
其中:
- $array:必需,输入的数组。
- $search_value:可选,指定要查找的键值。如果设置,则只返回包含该值的键。
- $strict:可选,指定是否开启全等比较。如果设置为 true,则不仅比较值,还要比较类型。
示例:
// 普通用法
$arr = array("name" => "Tom", "age" => 18, "gender" => "male");
var_dump(array_keys($arr)); // 输出:array(0 => "name", 1 => "age", 2 => "gender")
// 查找指定值的键名
$arr = array("name" => "Tom", "age" => 18, "gender" => "male", "hobby" => "swim");
var_dump(array_keys($arr, "swim")); // 输出:array(0 => "hobby")
// 使用全等比较
$arr = array("1" => "Tom", 2 => 18, 3 => "male");
var_dump(array_keys($arr, "2", true)); // 输出:array()
var_dump(array_keys($arr, 2, true)); // 输出:array(0 => 2)
// 当数组键名不是连续的数值时,注意索引顺序的影响
$arr = array("name" => "Tom", "age" => 18, "gender" => "male");
unset($arr["age"]);
var_dump(array_keys($arr)); // 输出:array(0 => "name", 1 => "gender")
总之,array_keys函数是 PHP 中一个非常实用的数组函数,可以用来查找和操作数组中的键值。
发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/116893.html