Retorna o elemento atual em um array

# current

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

current — Retorna o elemento atual em um array

### Descrição

function current(array|object `$array`): mixed

Todo array tem um ponteiro interno para o elemento "atual", o qual é inicializado para apontar para o primeiro elemento inserido em um array.

### Parâmetros

`array`

  O array.

### Valor Retornado

A função current() simplesmente retorna o valor do elemento do array que está sendo apontado pelo ponteiro interno. Ela não move o ponteiro de forma alguma. Se o ponteiro interno aponta para além do final da lista de elementos ou o array está vazio, current() retorna `false`.

Aviso

Esta função pode retornar o valor booleano `false`, mas também pode retornar um valor não booleano que pode ser avaliado como `false`. Leia a seção sobre Booleanos para mais informações. Use o operador === para testar o valor retornado por esta função.

### Registro de Alterações

Versão | Descrição
--- | ---
8.1.0 | Chamar esta função em objects foi descontinuado. Converta o object para um array usando get_mangled_object_vars() primeiro ou, em vez disso, use os métodos fornecidos por uma classe que implementa Iterator, como ArrayIterator.
7.4.0 | Instâncias de classes SPL agora são tratadas como objetos vazios que não possuem propriedades em vez de chamar o método da interface Iterator com o mesmo nome desta função.

### Exemplos

Exemplo #1 Exemplo do uso de current() e amigos

    <?php
    $transport = array('foot', 'bike', 'car', 'plane');
    echo $mode = current($transport), PHP_EOL; // $mode = 'foot';
    echo $mode = next($transport), PHP_EOL;    // $mode = 'bike';
    echo $mode = current($transport), PHP_EOL; // $mode = 'bike';
    echo $mode = prev($transport), PHP_EOL;    // $mode = 'foot';
    echo $mode = end($transport), PHP_EOL;     // $mode = 'plane';
    echo $mode = current($transport), PHP_EOL; // $mode = 'plane';

    $arr = array();
    var_dump(current($arr)); // bool(false)

    $arr = array(array());
    var_dump(current($arr)); // array(0) { }
    ?>

### Notas

> Nota: Os resultados de chamar current() em um array vazio e em um array, cujo ponteiro interno aponta para além do fim dos elementos, são indistinguíveis de um elemento bool `false`. Para percorrer adequadamente um array que pode conter elementos `false`, veja a estrutura de controle `foreach`. Para ainda usar current() e checar adequadamente se o valor é realmente um elemento do array, a key() do elemento current() deve ser verificada como estritamente diferente de `null`.

### Veja Também

- end() - Define o ponteiro interno de um array para seu último elemento
- key() - Retorna uma chave de um array
- each() - Retorna o par atual de chave e valor de um array e avança o seu cursor
- prev() - Retrocede o ponteiro interno de um array
- reset() - Faz o ponteiro interno de um array apontar para o seu primeiro elemento
- next() - Avança o ponteiro interno de um array
- `foreach`

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open