Eloquent Filter VS Reject Pada Laravel 7

Adinata
3 min readMar 21, 2020

--

Dalam membangun aplikasi tentu kita akan selalu bersinggungan dengan fungsi filter misal pada saat melakukan query ke database kita ingin menampilkan hanya data tertentu saja.

Di tutorial sebelumnya kita sudah membahas mengenai mass assigment bagi anda yang belum membacanya dapat membacanya disini.

Pada Tutorial kali ini kita akan membahas Eloquent Filter Dan Reject pada laravel, Sebagai contoh pada study case kali ini kita akan melakukan filter pada data Items.

Berikut Data Items yang saya miliki saya menampilkan datanya tanpa menggunakan fungsi filter sbb :

$items = Item::all(); dd ( $items );

Berikut ouput dari code diatas

Terdapat 9 array data dari 9 array data ini kita akan coba implementasikan fungsi filter, dimana kita ingin filter data items yang panjang karakternya untuk field name itu besar dari 5 karakter berikut codingnya :

$items = Item::all()->filter( function ( $item ) { return strlen( $item->name ) > 5; }); dd ( $items );

Dari coding diatas akan menghasilkan output sbb :

Dimana sebelum data items di filter data yang ditampilkan ada 9 array dan setelah di filter data yang tampil hanya 5 array saja.

Dan bagaimana jika kita implementasikan fungsi reject pada data Items ? untuk codingnya sbb :

$items = Item::all()->reject( function ( $item ){ return strlen( $item->name) > 5 ; });

Berikut output dari coding diatas :

Dengan fitur reject maka data yang akan tampil adalah data yang kriterianya berbalik dengan fitur filter dimana dari coding diatas adalah data yang tampil adalah data item dengan panjang karakternya tidak lebih besar dari 5 karakter.

Kesimpulan :

Dengan menggunakan fungsi eloquent filter dan reject dapat membantu kita dalam melakukan filter data ataupun sebaliknya dengan cara yang sangat simple namun tetap powerful. Untuk dokumentasi mengenai eloquent anda dapat mengaksesnya disini

Apakah anda sudah menerapkan fungsi filter atau reject pada project anda ? jawab di kolom komentar dibawah ya.

Originally published at https://adinata.id on March 21, 2020.

--

--

Adinata
Adinata

Written by Adinata

Saya merupakan seorang fullstack developer dan wirausaha saya rutin membagikan tulisan saya seputar fullstack developer di website : https://midteknologi.com/

No responses yet