Menu
Coddy logo textTech

Extraindo com 'array_slice'

Parte da seção Lógica & Fluxo do Journey de PHP da Coddy — lição 16 de 68.

A função array_slice() permite extrair uma parte de um array sem modificar o array original. Diferente de funções como array_pop() ou array_shift() que alteram o array de origem, a array_slice() cria um novo array contendo apenas os elementos que você especificar.

A função recebe dois parâmetros principais: o offset (posição inicial) e o length (quantos elementos extrair):

<?php
$scores = [95, 87, 92, 78, 85, 90, 88];
$topThree = array_slice($scores, 0, 3);
print_r($topThree);  // Saída: Array ( [0] => 95 [1] => 87 [2] => 92 )
print_r($scores);    // Array original inalterado
?>

O parâmetro offset informa ao PHP onde começar a extrair (0 significa o primeiro elemento), enquanto o parâmetro length especifica quantos elementos obter. Você também pode usar valores negativos para o offset para começar a contar a partir do final do array.

Esta função é particularmente útil quando você precisa trabalhar com um subconjunto de dados, como exibir apenas os primeiros itens de uma lista grande ou extrair um intervalo específico de elementos para processamento, tudo isso mantendo seus dados originais intactos.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

challenge icon

Desafio

Fácil

Você receberá três entradas: um array de preços de produtos em formato JSON, uma posição inicial (offset) e o número de itens a serem extraídos (length). Leia todas as três entradas, converta a string JSON em um array, use array_slice() para extrair a parte especificada do array e imprima a fatia extraída usando print_r().

Formato de entrada: Três linhas - a primeira linha contém um array JSON de números (exemplo: [29.99,15.50,42.00,8.75,33.25]), a segunda linha contém o offset (posição inicial), a terceira linha contém o length (número de elementos a serem extraídos)

Saída esperada: A parte extraída do array, exibida usando print_r()

Folha de consulta

A função array_slice() extrai uma parte de um array sem modificar o array original.

Sintaxe: array_slice($array, $offset, $length)

  • offset: Posição inicial (0 = primeiro elemento)
  • length: Número de elementos a extrair
  • Use um offset negativo para começar do final do array
<?php
$scores = [95, 87, 92, 78, 85, 90, 88];
$topThree = array_slice($scores, 0, 3);
print_r($topThree);  // Array ( [0] => 95 [1] => 87 [2] => 92 )
print_r($scores);    // Array original inalterado
?>

Experimente você mesmo

<?php
// Lê o array JSON de preços
$json_input = fgets(STDIN);
$prices = (array)json_decode($json_input, true);

// Lê o deslocamento (posição inicial)
$offset = intval(fgets(STDIN));

// Lê o comprimento (número de elementos a extrair)
$length = intval(fgets(STDIN));

// TODO: Escreva seu código abaixo para extrair a fatia e exibi-la

?>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo