Como obter o primeiro elemento de um array em PHP: 7 maneiras práticas

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Arrays em PHP: o eterno desafio do primeiro elemento

\n\n

Todo desenvolvedor PHP já se deparou com a tarefa: "Como obter o primeiro elemento de um array?". Parece simples, não é? Mas o diabo, como sempre, está nos detalhes. Arrays em PHP podem ser indexados (com chaves numéricas) ou associativos (com chaves de string), e o que funciona para um tipo pode falhar para o outro.

\n\n

Neste artigo, vamos explorar 7 maneiras comprovadas de obter o primeiro elemento de um array, comparar seu desempenho e descobrir qual método escolher em cada situação. Você entenderá por que array_shift() nem sempre é a melhor opção e como reset() pode salvar seu código.

\n\n

Índice

\n\n\n

Método 1: array_shift() — o clássico

\n

A maneira mais óbvia que vem à mente é usar a função array_shift(). Ela extrai o primeiro elemento do array e o remove do array original.

\n\n
<?php\n$frutas = ['maçã', 'banana', 'cereja'];\n$primeira = array_shift($frutas);\necho $primeira; // maçã\nprint_r($frutas); // [1 => 'banana', 2 => 'cereja']\n?>
\n\n

Vantagens: Simplicidade, intuitividade.

\n

Desvantagens: A função altera o array original. Se você precisar manter os dados intactos, este método não é adequado. Além disso, para arrays grandes, a operação pode ser custosa.

\n\n

Método 2: reset() — o truque esperto com o ponteiro

\n

A função reset() posiciona o ponteiro interno do array no primeiro elemento e retorna seu valor. O array não é modificado!

\n\n
<?php\n$frutas = ['maçã', 'banana', 'cereja'];\n$primeira = reset($frutas);\necho $primeira; // maçã\nprint_r($frutas); // ['maçã', 'banana', 'cereja'] — array intacto\n?>
\n\n

Este método funciona perfeitamente tanto com arrays indexados quanto associativos. reset() é meu favorito pessoal para a maioria das tarefas.

\n\n

Importante: Se o array estiver vazio, reset() retornará false. Fique atento a isso!

\n\n

Método 3: current() após reset() — para ter controle

\n

Às vezes, você precisa não apenas obter o primeiro elemento, mas também garantir que o ponteiro esteja exatamente nele. A combinação reset() + current() oferece controle total.

\n\n
<?php\n$frutas = ['maçã', 'banana', 'cereja'];\nreset($frutas);\n$primeira = current($frutas);\necho $primeira; // maçã\n// O ponteiro permanece no primeiro elemento\n$segunda = next($frutas);\necho $segunda; // banana\n?>
\n\n

Este método é útil quando você planeja iterar o array usando next(), prev() e outras funções de manipulação de ponteiro.

\n\n

Método 4: array_values() + [0] — o canivete suíço

\n

Se você está trabalhando com um array associativo e não sabe a chave do primeiro elemento, pode redefinir todas as chaves com array_values() e acessar o índice zero.

\n\n
<?php\n$usuario = ['nome' => 'João', 'idade'                

Blogs

Book Recommendations