Dalam post kali ini, kita akan membahas short syntax yang ada di Laravel yang Anda sendiri sering gunakan teknik yang berulang - ulang yang padahal bisa dibuat lebih simple.
Dalam post kali ini, kita akan membahas short syntax yang ada di Laravel yang Anda sendiri sering gunakan teknik yang berulang - ulang yang padahal bisa dibuat lebih simple.
Pertama sekali, kita akan bahas tentang null safe operator
.
// Common
is_null($object->relation) ? null : $object->relation->id;
// Short
optional($object->relation)->id
Pastinya jika Anda menggunakan PHP 7, Anda bisa menggunakan hal ini.
// php 7
$object->relation->id ?? null
Dan jika Anda menggunakan PHP 8, bisa seperti ini.
$object?->relation?->id;
Next, kita akan bahas tentang mengambil single data dari database.
// common
User::first()->name;
//short
User::value('name');
Saat kita ingin menampilkan data, seiyanya kita harus menampilkan yang penting-penting saja, karena tidak baik menampilkan data yang tidak penting, dan itu juga mempengaruhi kinerja aplikasi.
// Common
User::select('name', 'email')->get();
// Short
User::get(['name', 'email']);
Pernah gak berfikir ingin menampilkan data dari yang pertama kali dibuat.
// Common
User::orderBy('created_at', 'asc')->get();
// Short
User::oldest()->get();
Mungkin Anda ingin menampilkan satu data secara acak. Seperti contoh, jika Anda perhatikan halaman beranda pada Parsinta, itu testimonial yang terpilih kan secara acak. Berikut adalah shorthand nya.
// common
User::get()->random(1)->first();
// short
User::inRandomOrder()->first();
Lagi-lagi masih tentang menampilkan data, lebih tepatnya dengan spesipik column
// Common
User::orderBy('age', 'desc')->get();
// Short
User::latest('age')->get();
where
statement. Simple but sure.
// Common
User::where('email', '=', '[email protected]')->first();
// Short
User::whereEmail('[email protected]')->first();
Dan kali ini tentang Carbon
, lebih mudah jika tidak menggunakan class
.
// Common
Carbon\Carbon::now();
Carbon\Carbon::today();
// Short
now();
today();
Bagaimana dengan request
, kareana ini sering sekali kita gunakan untuk membuat conditional
.
// Common
$request->has('value') ? $request->value : 'default';
//Short
$request->get('value', 'default');
Kali ini tentang session
, mungkin tidak sering Anda gunakan, tapi saya lumayan sering, jadi sangat membantu juga.
Yang biasa kita lakukan untuk start session nya.
// Common
Session::put('key', $value);
//Short
session(['key' => $value]);
Menampilkan session yang telah di tetapkan.
Session::get('cart'); // Common
$request->session()->get('cart'); // Or
session('cart'); // Short
Kali ini ada hubungannya dengan Laravel terbaru yaitu versi 8.57.0, sekarang Anda bisa langsung menggunakan whereRelation
dari model nya.
$user = User::find(5);
// Common
Post::whereHas('user', fn ($query) => $query->where('id', $user->id))->get()->pluck('title');
// Short
Post::whereRelation('user', 'id', $user->id)->get()->pluck('title');
Ketika laravel v9.42
, ada penambahan fungsi baru yaitu report_if
dan report_unless
.
// Common
if(! Auth::user()->isAdmin()){
report('Is route need permission user');
}
// Shorten/avoid `if` with:
report_if(
Auth::user()->isAdmin(),
'Is route need permission admin'
);
// or
report_unless(
Auth::user()->isAdmin(),
'Is route need permission user'
);
Itu saja untuk tips and trik kali ini. Semoaga bermanfaat. Share jika kalian suka. Bookmark jika kalian tidak sempat membaca. Saya Irsyad. See you next time 🙂
Let's start living like no one can help us in any event, so that when we are helped in certain times, it becomes a plus in itself.