Tutorial Laravel Collection #3 : Mencoba Collection


Tutorial Laravel Collection #3 : Mencoba Collection

Hello guys, kembali kita di website santrikoding. Kemarin kita sudah membahas tentang collection, nah saat ini mari kita untuk mencoba fitur-fitur yang disediakan oleh collection. Mungkin pada pembahasan kali ini tidak semua akan kita bahas, namun setidak nya ini bisa menambah rasa penasaran untuk terus mengulik fitur collection laravel ini hihi...

Oke langsung saja kita let's go!

Let's drive!

All

Metode pertama ini adalah All, yak betul dari nama nya saja kita sudah tau bahwa fitur ini untuk melihat seluruh array. Contoh kode nya sebagai berikut

$array = collect([1, 2, 3])->all();
 
// [1, 2, 3]

Average

Sesuai dengan nama nya, fungsi / fitur ini untuk mencari nilai rata-rata dari sebuah array. Kita bisa lihat contoh kode nya dibawah

$array = \collect([1, 2, 3, 4, 5]);

return $array->avg();
// atau
return $array->average();

// Hasil nya
// 3

Yak betul, kita bisa menggunakan avg/average untuk mencari nilai rata-rata dari array

Chunk

Chunk, terdengar asing seperti nya ya, namun fitur chunk ini sangat powerfull guys. Chunk adalah fitur collection untuk memecah array menjadi beberapa bagian sesuai yang kita tentukan, kita bisa lihat contoh dibawah

$collection = collect([1, 2, 3, 4, 5, 6, 7]);
 
$chunks = $collection->chunk(4);
 
$chunks->all();
 
// Hasil
// [[1, 2, 3, 4], [5, 6, 7]]

Bisa kita lihat, array 1,2,3,4 dst adalah satu array, dengan method chunk kita bisa memecah array menjadi beberapa bagian sesuai dengan yang kita tentukan.

Collapse

Nah collapse ini kebalikan dari chunk ya ges ya. Kalau chunk dari 1 array menjadi beberapa array, sedangkan collapse ini dari beberapa array digabungkan menjadi 1. Kita bisa lihat contoh dibawah ini

$collection = collect([
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9],
]);
 
$collapsed = $collection->collapse();
 
$collapsed->all();
 
// Hasil
// [1, 2, 3, 4, 5, 6, 7, 8, 9]

Combine

Fitur combine ini, akan menggabungkan 2 array dan hasilnya akan menjadi associative array. Dimana array pertama akan menjadi key, array kedua akan menjadi value nya. Kita bisa lihat contoh dibawah

$collection = collect(['name', 'age']);
 
$combined = $collection->combine(['George', 29]);
 
$combined->all();
 
// Hasil
// ['name' => 'George', 'age' => 29]

Count

Yak betul, sesuai nama nya, count ini adalah fitur untuk menghitung jumlah array. Contoh bisa dilihat pada kode berikut

$collection = collect([1, 2, 3, 4]);
 
$collection->count();
 
// Hasil
// 4

Each

Fitur each ini sebenarnya sama seperti foreach. Jadi dalam fitur each ini, kita bisa melihat isi array nya satu persatu. Perhatikan contoh kode dibawah

$collection = collect(["Mohammad", "Ricky", "Sanjaya"]);

$collection->each(function($item) {
  return $item;
});

// Hasil
// "Mohammad", "Ricky", "Sanjaya"

Parameter each ini adalah sebuah callback function / setiap array ini akan kita apakan nanti nya.

Filter

Yak sesuai nama nya, filter ini berfungsi untuk memfilter isi array dan akan membuat array baru. Kita bisa lihat contoh kode berikut

$collection = collect([1, 2, 3, 4]);
 
$filtered = $collection->filter(function ($value, $key) {
    return $value > 2;
});
 
$filtered->all();
 
// Hasil
// [3, 4]

Parameter pada filter ini lagi-lagi menggunakan callback function, dimana parameter callback ini ada 2, pertama adalah $value dan yang kedua adalah $key. Pada kode diatas, kita memfilter isi array yang lebih dari 2, sehingga hasilnya akan menghilangkan nilai-nilai yang kurang dari 2.

Map

Map adalah fungsi untuk memanipulasi data array dan membuat sebuah array baru. Kita lihat contoh dibawah

$collection = collect([1, 2, 3, 4, 5]);
 
$multiplied = $collection->map(function ($item, $key) {
    return $item * 2;
});
 
$multiplied->all();
 
// Hasil
// [2, 4, 6, 8, 10]

Pada contoh diatas, data array kita 1,2,3 dst. akan kita manipulasi dengan tiap array akan dikalikan 2, sehingga akan terbentuk array baru yang dimana isi array adalah hasil dari array sebelumnya dikalikan 2, dan lagi-lagi parameter pada map ini berupa callback function

Unique

Unique adalah fitur collection untuk menghilangkan array yang duplikasi. Contoh nya ada pada kode berikut

$collection = collect([1, 1, 2, 2, 3, 4, 2]);
 
$unique = $collection->unique();
 
$unique->values()->all();
 
// Hasil
// [1, 2, 3, 4]

Kesimpulan

Yak mungkin segitulah beberapa fitur collection yang kita bahas, sebenarnya masih sangat banyak sekali fitur dari collection ini, namun karena keterbatasan waktu, maka kita membahas fitur-fitur yang mungkin akan sering dipakai teman-teman ya. Selengkap nya teman-teman dapat melihat pada dokumentasi resmi laravel atau bisa dengan klik link ini

Oke teman-teman, berakhir sudah series kita dalam belajar Laravel collection ini. Semoga tutorial ini dapat membantu sobat agar lebih gercep lagi dalam membangun aplikasi ya:D. Oke kita berjumpa pada series berikutnyaa!


Mohammad Ricky Sanjaya
Hi! I'm Sanjaya Back End Developer. You can discuss with me about web technology and more!

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami