Função range() em PHP: Como Gerar Arrays de Números e Letras
Nas aulas anteriores do nosso Curso de PHP Progressivo, você aprendeu a criar arrays manualmente, digitando item por item. Isso é ótimo quando temos uma lista pequena de carros ou clientes. Mas na programação real, o cenário muda rápido.
Muitas vezes, precisamos preencher um array com sequências lógicas. Imagina nas lojas virtuais que você vai criar, que possuem sistemas de paginação com milhares de produtos? Ou um sistema de RH onde você precisa gerar um array de 1 a 1000 para representar os crachás dos funcionários da empresa?
Inicializar esses dados manualmente, digitando $array = [1, 2, 3... 1000];, se torna uma tarefa humanamente impossível, enfadonha e amadora. É exatamente para resolver esse problema que o PHP nos presenteou com a mágica função range().
O que é a função range() em PHP?
A função range() no PHP cria e retorna um array contendo uma sequência progressiva de elementos (números ou letras). Você informa onde a sequência começa, onde ela termina, e o PHP gera a lista inteira na memória instantaneamente.
A sintaxe oficial, segundo a documentação do PHP, exige dois parâmetros obrigatórios e um opcional:
array range( int|float|string $inicio , int|float|string $fim [, int|float $pulo = 1 ] )
- $inicio: O valor onde o seu array vai começar.
- $fim: O valor máximo (ou limite) onde o array deve parar.
- $pulo (step): Opcional. É o "salto" entre um elemento e outro. Se não preenchido, o PHP assume que o salto é de 1 em 1.
Exemplo Prático 1: Criando um Dado Virtual
Vamos criar um array que vai de 1 até 6 para simular as faces de um dado.
<?php
// Cria um array automaticamente com os números 1, 2, 3, 4, 5 e 6
$dado = range(1, 6);
// Usando o print_r() da aula passada para visualizar
echo "<pre>";
print_r($dado);
echo "</pre>";
?>
Pronto! A variável $dado agora é um objeto do tipo array com 6 elementos, e seus índices (como aprendemos) vão de 0 até 5.
Cansado de tutoriais rasos pela internet?
Aprender funções soltas não te faz um programador. O que dá dinheiro é saber unir a lógica do PHP com Bancos de Dados Reais. Acelere sua evolução estruturando seus estudos.
Conheça nosso Mega Pack de Apostilas. Estude no ônibus, sem distrações e com centenas de exercícios focados no mercado de trabalho!
A Magia do Terceiro Parâmetro: Função range() com Salto (Step)
Aqui as coisas ficam interessantes para quem gosta de lógica pura. Vamos supor que você precise gerar um array com os números ímpares de 1 até 100. Ou seja, você quer a sequência: 1, 3, 5, 7, 9... até o 99.
Fazer isso na mão seria tortura. Mas com o terceiro parâmetro da função range (o famoso step ou pulo), você resolve isso com uma única linha de código elegante.
<?php
// Sintaxe: range(inicio, fim, pulo)
// Cria um array com os números ímpares de 1 a 100 (saltando de 2 em 2)
$impares = range(1, 100, 2);
// BÔNUS SÊNIOR: E se eu quiser contar de trás pra frente?
// A função range é inteligente o suficiente para entender a ordem decrescente!
$contagem_regressiva = range(10, 0);
// Resultado: [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
?>
No caso do salto, primeiro você informa o ponto de partida (1), depois o ponto máximo que ele pode chegar (100) e o salto que ele vai dar como terceiro argumento (2). Simples, limpo e performático.
Função range() com Letras e Strings
Aqui está o diferencial de saber programar. A função range() não funciona apenas com números. Por baixo dos panos, o PHP entende a tabela ASCII, o que significa que ele consegue criar sequências de caracteres alfabéticos!
Imagine que você quer criar um índice de Glossário para um site (de A a Z) onde o usuário clica na letra e filtra as palavras. Veja como é fácil:
<?php
// Para gerar o alfabeto minúsculo inteiro:
$alfa_minusculo = range('a', 'z');
// Para gerar o alfabeto maiúsculo:
$alfa_maiusculo = range('A', 'Z');
// Resultado interno gerado: ['A', 'B', 'C', 'D', 'E' ... 'Z']
?>
range('aa', 'zz'), ele vai ignorar o segundo 'a' e o segundo 'z', e processará apenas de 'a' a 'z' normal.
Simulador Interativo: Gere o seu Range!
Brinque com o console virtual abaixo. Defina onde você quer que sua lista comece, onde deve terminar, e qual será o tamanho do pulo. Veja o PHP (simulado) agir instantaneamente.
⚙️ Simulador: range(inicio, fim, pulo)
Seu arsenal de funções nativas precisa crescer! 🚀
O range() é apenas UMA das centenas de funções que o PHP já traz prontas para você poupar tempo e dinheiro. Por que reinventar a roda escrevendo laços imensos quando você pode resolver em 1 linha de código? Acelere o seu domínio com a nossa apostila voltada para o mercado de trabalho real.
"A apostila do Progressivo é como ter um cheat-sheet infinito de PHP do lado da mesa. Sempre que travo, abro o PDF e encontro uma função nativa que resolve meu problema."📥 Baixar Apostila de PHP Agora
- Amanda C., Full-Stack Jr.
O que Estudar a Seguir?
Você tem em mãos um array totalmente preenchido. O que fazer com ele agora? O próximo passo natural é aprender como percorrer essa lista, seja para gravar os dados em um banco ou mostrá-los na tela do usuário final. Revise e avance:
- Outras Funções Essenciais:
count(),sort()ein_array() - Como usar o laço Foreach para processar seu array gerado
- Alternativas: Gerando sequências com o Laço While
Nenhum comentário:
Postar um comentário