Rabu, 28 September 2022

Apa yang Baru Di Laravel 9.32.0

Update kali bergantung sekali dengan fungsi yang biasa kita pakai yaitu dd(), baru-baru ini Nuno Maduro telah membuat pull request yang dapat mengetahui dimana file yang kita dump ke browser.

Laravel
Released

Apa yang Baru Di Laravel 9.32.0

Update kali bergantung sekali dengan fungsi yang biasa kita pakai yaitu dd(), baru-baru ini Nuno Maduro telah membuat pull request yang dapat mengetahui dimana file yang kita dump ke browser.

Sebagai contoh, disini saya mempunyai HomeController dan saya akan coba untuk membuat fungsi dd di dalam metode yang ada di dalam nya.

class HomeController extends Controller
{
    /**
     * Handle the incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function __invoke(Request $request)
    {
        dd('Where am I ?');
    }
}

Jika sekarang Anda lihat di browser, maka harusnya akan ada dump dari isi fungsi nya diikuti dengan dimana dump itu di jalankan.

"Where am I ?" // app/Http/Controllers/HomeController.php:17

Berikut ini adalah contoh yang lain.

$username = \App\Models\User::value('name');
dd($username);

# output
"Samir Schinner" // app/Http/Controllers/HomeController.php:18

Bagaimana jika di dalam terminal ? Dalam update kali ini, kita juga akan bisa melihat dimana kode kita di dumping. Untuk contoh kali ini, saya akan langsung buat di dalam AppServiceProvider pada metode boot.

class AppServiceProvider extends ServiceProvider
{
    ...
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        dd('Whoops!');
    }
}

Dan jika sekarang kita jalankan php artisan di terminal, maka outputnya akan kelihatan seperti gambar berikut ini.

Die and dump inside terminal

Dan jika Anda klik path dump file nya, maka itu akan membuka file tersebut dengan editor text Anda, atau yang sudah dikonfigurasi dalam komputer Anda.

Blade short attribute

Pascal Baljet telah berkontribusi dalam update kali ini, yang mana kita dapat dengan mudah membuat attribute pada komponen blade kita.

<x-product :product-id="$productId"></x-product>

<!-- short syntax -->
<x-product :$productId></x-product>

Get request data as integer and float

Jason McCreary menambahkan support untuk mengambil data request dengan mudah ke tipe float dan integer.

// Before
intval($request->input('integer_request'));
floatval($request->input('float_request'));

// After
$request->integer('integer_request');
$request->float('float_request');

Enum Route Binding Default

Florian Stascheck telah berkontribusi dalam menyediakan default value untuk enum route binding.

Route::get('tags/{tag?}', fn (TagEnum $tag = TagEnum::Travel) => $tag->value);

Semoga artikel ini bermanfaat ya, saya Irsyad, I'll see you on the next one.

Berikut artikel-artikel atau pun video yang terkait dengan laravel updates.