数组函数

PHP key() 函数

主题:PHP 数组参考上一页|下一页

说明

key() 函数获取数组中当前元素的键或索引。

下表总结了该函数的技术细节。

返回值: 返回数组中当前元素的键。 如果数组为空或数组的内部指针指向元素列表末尾之外,则返回 NULL
变更日志: 从 PHP 7.0.0 开始,数组总是按值传递给这个函数。 在此版本之前,如果可能,它是按引用传递,否则按值传递。
版本: PHP 4+

提示: 每个数组都有一个指向数组中当前元素的内部指针。 当创建一个新数组时,当前指针被初始化为引用数组中的第一个元素。


语法

key() 函数的基本语法如下:

key(array);

下面的例子展示了 key() 函数的作用。

<?php
// 样本数组
$alphabets = array("a"=>"apple", "b"=>"ball", "c"=>"cat", "d"=>"dog");

// 获取当前元素的键
echo key($alphabets); // Prints: a

/* 将数组的内部指针移动到下一个
元素然后获取密钥 */
next($alphabets);
echo key($alphabets); // Prints: b
?>

参数

key() 函数接受以下参数。

参数 说明
array 必填。 指定要处理的数组。

更多示例

这里有更多示例展示了 key() 函数的实际工作原理:

您也可以将此函数与索引数组一起使用来获取当前元素的索引。

<?php
// 样本数组
$colors = array("red", "green", "blue", "orange", "yellow", "black");

// 获取当前元素的键
echo key($colors); // Prints: 0

/* 将数组的内部指针移动到下一个
元素然后获取密钥 */
next($colors);
echo key($colors); // Prints: 1
?>

key() 函数通常与以下函数一起使用:

  • current() – 返回数组中当前元素的值。
  • next() – 将数组的内部指针移动到下一个元素,并返回其值。
  • prev() – 将数组的内部指针移动到前一个元素,并返回其值。
  • end() – 将数组的内部指针移动到其最后一个元素,并返回其值。
  • reset() – 将数组的内部指针设置为其第一个元素,并返回其值。

下面是一个示例,演示了这些函数的基本工作原理:

<?php
// 样本数组
$colors = array("red", "green", "blue", "orange", "yellow", "black");

// 获取值
echo current($colors);  // Prints: red
echo end($colors);      // Prints: black
echo current($colors);  // Prints: black
echo prev($colors);     // Prints: yellow
echo current($colors);  // Prints: yellow
echo next($colors);     // Prints: black
echo current($colors);  // Prints: black
echo reset($colors);    // Prints: red
echo current($colors);  // Prints: red

// 获取当前元素的键
echo key($colors);      // Prints: 0
?>
Advertisements