PHP函数:如何在PHP中使用array_keys()函数获取数组的所有键名?
发布时间:2023-06-10 09:51:41
在PHP中,array_keys()函数是用于获取给定数组中所有键名的函数。将要搜索的键名或值传入函数,函数将返回包含所有符合条件的键名的新数组。
以下是使用 array_keys() 函数来获取数组键名的示例:
<?php
// 定义数组
$fruits = array(
"apple" => "红色",
"orange" => "橙色",
"banana" => "黄色",
"grape" => "紫色"
);
// 获取所有键名
$keys = array_keys($fruits);
// 输出结果
print_r($keys);
?>
结果将是:
Array
(
[0] => apple
[1] => orange
[2] => banana
[3] => grape
)
可以看到,函数返回了一个包含了数组 $fruits 中所有键名的新数组。
此外,该函数还支持第二个可选参数 search_value(搜索值)以及第三个可选参数 strict(是否使用严格模式)。
当使用 search_value 参数时,该函数将只返回包含了指定值的键名。
以下是一个使用 search_value 参数的示例:
<?php
// 定义数组
$fruits = array(
"apple" => "红色",
"orange" => "橙色",
"banana" => "黄色",
"grape" => "紫色",
"lemon" => "黄色"
);
// 获取所有值为 "黄色" 的键名
$keys = array_keys($fruits, "黄色");
// 输出结果
print_r($keys);
?>
结果将是:
Array
(
[0] => banana
[1] => lemon
)
可以看到,该函数只返回了包含值为 "黄色" 的键名:banana 和 lemon。
除了 search_value 参数外,该函数还支持一个 strict 参数。该参数默认为 false,表示比较时不区分大小写。
当 strict 参数设置为 true 时,该函数将在比较键名时使用严格模式,即区分大小写。
以下是一个使用 strict 参数的示例:
<?php
// 定义数组
$fruits = array(
"Apple" => "红色",
"Orange" => "橙色",
"Banana" => "黄色",
"Grape" => "紫色",
"Lemon" => "黄色"
);
// 获取所有键名
$keys = array_keys($fruits);
// 获取所有键名(并区分大小写)
$keys_strict = array_keys($fruits, "", true);
// 输出结果
echo "不区分大小写:" . PHP_EOL;
print_r($keys);
echo "区分大小写:" . PHP_EOL;
print_r($keys_strict);
?>
结果将是:
不区分大小写:
Array
(
[0] => Apple
[1] => Orange
[2] => Banana
[3] => Grape
[4] => Lemon
)
区分大小写:
Array
(
[0] => Apple
[1] => Orange
[2] => Banana
[3] => Grape
[4] => Lemon
)
可以看到,在不使用 strict 参数时,函数返回的数组中包含了所有键名,不区分大小写;而使用 strict 参数时,函数返回的数组中区分大小写。
总结
array_keys() 函数是一个获取数组键名的常用函数,可以帮助我们轻松地获取一个数组中的所有键名。除此之外,该函数还支持 search_value 和 strict 两个可选参数,分别用于搜索指定值和区分大小写,让函数更加灵活实用。
