Tomaremos como ejemplo una base de datos de libros
$books = Book::where('release_year', 2015)->get();
Obtenemos el siguiente resultado:
[
['title' => 'Lean Startup', 'price' => 10],
['title' => 'The One Thing', 'price' => 15],
['title' => 'Laravel: Code Bright', 'price' => 20],
['title' => 'The 4-Hour Work Week', 'price' => 5],
]
1. avg()
Este método calcuaría el precio medio del libro
$average_price = $books->avg('price'); // in our case, 12.5
2. chunk()
Si queremos dividir los resultados en partes iguales, por ejemplo para mostrarlos en columnas diferentes
$chunks = $books->chunk(2); $chunks->toArray();
El resultado sería:
[
[
['title' => 'Lean Startup', 'price' => 10],
['title' => 'The One Thing', 'price' => 15]
],
[
['title' => 'Laravel: Code Bright', 'price' => 20],
['title' => 'The 4-Hour Work Week', 'price' => 5],
]
]
3. contains()
Comprueba si uno de nuestros campos contiene cierto valor.
$books->contains('title', 'The One Thing'); // TRUE
$books->contains('title', 'The Second Thing'); // FALSE
4. every()
Otro método para dividir la colección en columnas diferentes. Esta vez, cada () formaría una nueva colección, que consistiría en cada N-ésimo elemento.
$books->every(2); // every 2nd element
6. forget()
Este método se usa para no incluir ciertos campos.
$books->forget('price');
El resultado:
[
['title' => 'Lean Startup'],
['title' => 'The One Thing'],
['title' => 'Laravel: Code Bright'],
['title' => 'The 4-Hour Work Week'],
]
7. implode()
Similar a la ya conocida función de PHP implode().
$books->implode('title', ', ');
El resultado:
'Lean Startup, The One Thing, Laravel: Code Bright, The 4-Hour Work Week'
8. keyBy()
Muy útil para utilizar en ciclos foreach más adelante. Básicamente, transforma una colección en una matriz con la clave elegida.
$by_key = $books->keyBy('title');
$by_key->all();
El resultado:
[
'Lean Startup' => ['title' => 'Lean Startup', 'price' => 10],
'The One Thing' => ['title' => 'The One Thing', 'price' => 15],
'Laravel: Code Bright' => ['title' => 'Laravel: Code Bright', 'price' => 20],
'The 4-Hour Work Week' => ['title' => 'The 4-Hour Work Week', 'price' => 5],
]
9. map()
Para extraer algunos valores y realizar algunas acciones con ellos.
$discounted_books = $books->map(function ($item) {
return ['title' => $item->title, 'price' => $item->price / 2];
});
El resultado:
[
['title' => 'Lean Startup', 'price' => 5],
['title' => 'The One Thing', 'price' => 7.5],
['title' => 'Laravel: Code Bright', 'price' => 10],
['title' => 'The 4-Hour Work Week', 'price' => 2.5],
]
10. pluck()
Este método permite extraer fácilmente solo una columna.
$prices = $books->pluck('price');
$plucked->all();
El resultado:
[10, 15, 20, 5]

