Fetch a key from an array

- « key_exists

- krsort »

- PHP Manual
- Array Functions
- Fetch a key from an array

# key

(PHP 4, PHP 5, PHP 7, PHP 8)

key — Fetch a key from an array

### Description

key(array|object `$array`): int|string|null

key() returns the index element of the current array position.

### Parameters

`array`

  The array.

### Return Values

The key() function simply returns the key of the array element that's currently being pointed to by the internal pointer. It does not move the pointer in any way. If the internal pointer points beyond the end of the elements list or the array is empty, key() returns `null`.

### Changelog

Version | Description
--- | ---
8.1.0 | Calling this function on objects is deprecated. Either convert the object to an array using get_mangled_object_vars() first, or use the methods provided by a class that implements Iterator, such as ArrayIterator, instead.
7.4.0 | Instances of SPL classes are now treated like empty objects that have no properties instead of calling the Iterator method with the same name as this function.

### Examples

Example #1 key() example

    <?php$array = array(    'fruit1' => 'apple',    'fruit2' => 'orange',    'fruit3' => 'grape',    'fruit4' => 'apple',    'fruit5' => 'apple');// this cycle echoes all associative array// key where value equals "apple"while ($fruit_name = current($array)) {    if ($fruit_name == 'apple') {        echo key($array), "\n";    }    next($array);}?>

The above example will output:

    fruit1
    fruit4
    fruit5

### See Also

- current() - Return the current element in an array
- next() - Advance the internal pointer of an array
- array_key_first() - Gets the first key of an array
- foreach