> Faqs > Cómo quedarme con los 5 primeros elementos de una colección en Laravel

Cómo quedarme con los 5 primeros elementos de una colección en Laravel

Tengo una colección de elementos en Laravel y quiero quedarme con un subconjunto de elementos.

En concreto quiero quedarme con los 5 primeros elementos de la colección. ¿Cómo lo puedo hacer?

Respuestas

El método de colecciones de Laravel que necesitas es slice().

Funciona igual que en algunos lenguajes populares. Recibe dos parámetros:

  • El índice del elemento primero que quieres quedarte
  • El número de elementos que quieres quedarte

Si no le indicas el segundo parámetro entonces te da los elementos hasta el final del array.

Aquí tienes un ejemplo:

$coleccion = collect(['a','x','g','f','xx','qw','er','ty']);
$subconjunto = $coleccion->slice(0,5);

Esto te dará los primeros 5 elementos. La salida será la siguiente:

Illuminate\Support\Collection {#1795 ▼
  #items: array:5 [▼
    0 => "a"
    1 => "x"
    2 => "g"
    3 => "f"
    4 => "xx"
  ]
}
Julian
1100 46 84 45
Muchas gracias por la respuesta.