php的数组操作函数中有一个 array_keys 函数,此函数可以将数组内所有的键名以新数组的形式返回,这在数组的操作尤为重要。关于 array_keys 函数的用法,可以参考下面的文章。

php array_keys() 函数

array_keys():获取数组内所有的键名,并以新数组的形式返回

语法:

array_keys(array,value,strict)

参数:

array:被操作的数组

value:可省略,如设置则只获取该值的键名

strict:默认false,如为 true ,则区分值的数据类型需要与 value 参数一起使用

php array_keys 获取数组中所有的键名

例:php 获取数组中所有的键名

$arr = array(
    'name' => 'mochu',
    'host' => 'feiniaomy.com',
    'color' => 'green',
);
print_r(array_keys($arr));

打印结果:

Array
(
    [0] => name
    [1] => host
    [2] => color
)

例2:php获取数组中指定值的键名

$arr = array(
    'nav_color'  => 'green',
    'body_color' => 'red',
    'foot_color' => 'green',
    'head_code'  => 'yellow'
);
print_r(array_keys($arr,'green'));

打印结果:

Array
(
    [0] => nav_color
    [1] => foot_color
)

例3:php 获取数组中指定数据类型值的键名

$arr = array(
    'a_str'   => '5',
    'a_int'   => 5,
    'b_str' => '6',
    'b_int'  => 6
);
print_r(array_keys($arr,'5'));
//指定第三个参数为 true
//第二个参数为类型为 string
print_r(array_keys($arr,'5',true));
//第二个参数类型为 int
print_r(array_keys($arr,5,true));

打印结果:

Array
(
    [0] => a_str
    [1] => a_int
)
Array
(
    [0] => a_str
)
Array
(
    [0] => a_int
)