欢迎访问宙启技术站
智能推送

利用PHP函数array_keys和array_values获取数组的键和值

发布时间:2023-06-11 05:18:04

PHP提供了一系列的数组函数,其中包括获取数组键和值的函数array_keys和array_values。本文将详细介绍这两个函数的使用方法和注意事项。

1. array_keys函数

array_keys函数用于返回数组中所有的键名(key),并将它们以数组的形式返回。

语法:

array_keys ( array $array [, mixed $search_value = null [, bool $strict = false ]] ) : array

参数说明:

array:必选参数,要取出键名的数组。

search_value:可选参数,指定要搜索的值。如果该参数被设置,则只返回包含该值的键名。

strict:可选参数,该参数指定在比较键名时是否区分大小写。默认为false,即不区分大小写。

返回值:

返回一个数组,包含所有的键名。如果指定了search_value,则只返回包含该值的键名。

示例:

假设有一个数组$arr=array("key1"=>"value1", "key2"=>"value2", "key3"=>"value3"),如下所示:

<?php

$arr=array("key1"=>"value1", "key2"=>"value2", "key3"=>"value3");

print_r(array_keys($arr));  //输出:Array ( [0] => key1 [1] => key2 [2] => key3 )

?>

上述代码中,调用array_keys函数,将数组$arr中的键名(key)全部取出,并以数组的形式返回。输出结果为包含所有键名的数组。

2. array_values函数

array_values函数用于返回数组中所有的值(value),并将它们以数组的形式返回。

语法:

array_values ( array $array ) : array

参数说明:

array:必选参数,要取出值的数组。

返回值:

返回一个数组,包含所有的值。

示例:

假设有一个数组$arr=array("key1"=>"value1", "key2"=>"value2", "key3"=>"value3"),如下所示:

<?php

$arr=array("key1"=>"value1", "key2"=>"value2", "key3"=>"value3");

print_r(array_values($arr));  //输出:Array ( [0] => value1 [1] => value2 [2] => value3 )

?>

上述代码中,调用array_values函数,将数组$arr中的值(value)全部取出,并以数组的形式返回。输出结果为包含所有值的数组。

注意事项:

1. array_keys和array_values函数的参数都是数组,如果传入的参数不是数组,会报错。

2. array_keys函数可以带有两个可选参数,其中第一个参数为要搜索的值,第二个参数为是否区分大小写的标志。

3. array_keys函数返回的是一个包含所有键名的数组,而array_values函数返回的是一个包含所有值的数组。

4. 在使用array_keys和array_values函数时需要注意,如果原数组的键名或值是数字,那么返回的数组的键名会重新从0开始编号。

总结:

PHP提供了很多数组函数,其中包括获取数组键和值的函数array_keys和array_values。array_keys函数可以返回数组中所有的键名,而array_values函数可以返回数组中所有的值。在使用这两个函数时,需要注意参数的正确性和返回值的格式。