📜  PHP | key()函数(1)

📅  最后修改于: 2023-12-03 14:45:18.208000             🧑  作者: Mango

PHP | key()函数

简介

key()是一个PHP内置函数,它返回当前数组指针指向的元素的键名。

语法
key(array $array): mixed
参数
  • $array:要获取键名的数组。
返回值
  • mixed:返回当前数组指针指向的元素的键名。如果指针未指向任何元素,则返回null
特别说明

key()不会移动数组指针。如果需要移动指针,请使用next()prev()reset()end()等其他函数。

示例
示例一:获取当前数组指针指向的元素的键名
$languages = array('PHP', 'Java', 'Python', 'JavaScript');
echo key($languages); // 输出:0

在此示例中,我们定义了一个包含4个元素的数组$languages,并将key()函数应用于该数组。由于数组指针一开始指向第一个元素,因此调用key()函数后返回值为0,即数组中第一个元素的键名。

示例二:循环遍历数组元素,并输出每个元素的键名和值
$languages = array('PHP', 'Java', 'Python', 'JavaScript');
while ($language = current($languages)) {
    echo '键名:' . key($languages) . ',值:' . $language . '<br />';
    next($languages);
}

在此示例中,我们使用while循环遍历数组元素,并在每次循环中输出当前元素的键名和值。在输出前,我们先使用current()函数获取当前数组指针指向的元素的值,然后使用key()函数获取该元素的键名,最后使用next()函数移动数组指针到下一个元素。

示例三:使用key()实现一个平均数计算函数
function calcAverage($scores) {
    $count = count($scores);
    $total = array_sum($scores);
    $result = $total / $count;
    reset($scores);
    return array('average' => $result, 'first' => key($scores));
}
$scores = array(80, 90, 70, 85);
$result = calcAverage($scores);
echo '平均分数:' . $result['average'] . '<br />';
echo '第一位学生的编号:' . $result['first'];

在此示例中,我们定义了一个calcAverage()函数,用于计算一个整数数组的平均数,并返回数组的平均值和第一个元素的键名。在函数中,我们使用count()array_sum()函数分别计算数组的元素个数和总和,然后将二者除以得到平均数。接着,我们使用reset()函数将数组指针重置到第一个元素,并使用key()函数获取该元素的键名。

总结

key()函数在PHP中用于获取当前数组指针指向的元素的键名。由于它不会移动数组指针,因此通常需要与其他移动指针的函数一起使用。通过掌握key()函数的使用方法,可以更方便地操作PHP数组。