Mengenal Route Parameter Pada Slim Framework

18/03/2020    Ekky Ridyanto    49     Website

Lanjut route yang kedua masih menggunakan method yang sama yaitu get() misalnya saya ingin menampilkan halaman blog. Urlnya berada pada /blogs lalu yang saya lakukan adalah mereturn string seperti ini

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-01

Jadi kalo saya test ke URL dengan menuliskan localhost:8000/blogs

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-02

Maka hasilnya Object Not Found

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-03

Kenapa? karena di slim tidak otomatis punya pretty URL sehingga kita harus melakukan settingan awal. Tapi tenang saja kalo teman teman buka dokumentasinya dibagian web servers

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-04

Kemudian silahkan teman teman kebagian apache configuration. Yang harus kita lakukan adalah membuat satu file dengan nama .htaccess dan copy paste kode berikut ini

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-05

Nah sekarang kalo kita balik lagi kehalaman webnya kita sudah bisa melihat hasil response dari route url /blogs

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-06

Jadi itu dia sedikit perubahan dari sistem routing simplenya. Sekali lagi kita menggunakan object $app dari slim terus di ikuti nama metodenya. Boleh GET POST PUT atau DELETE. Nah kalo teman teman pernah kunjungi berbagai halaman blog dan kalo teman teman coba pilih satu salah blog tersebut maka teman teman akan melihat urlnya /blog disambung dengan judul dari articlenya atau slug dari blog tersebut. Tentu nilai judulnya ini dinamis tergantung list blog yang di pilih artinya kalo kita mengklik blog lain maka kita akan mendapatkan url judul yang berbeda. Nah bagaimana cara membuat sistem route seperti itu pada Slim Framework? Yang kita lakukan adalah dibagian url kita menyiapkan placeholder {} dengan nama slug sebagai berikut

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-07

Nanti slug ini akan di tangkap dan dicek ke database apakah slugnya ada atau tidak. Tapi untuk saat ini kita hanya mereturn slugnya saja. Untuk itu dibagian parameter fungsinya kita pasang 3 parameter yaitu $request, $response dan $args/argument

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-08

Untuk melihat hasil $argsnya dan karena $argsnya bentuknya array maka kita cetak dengan menuliskan var_dump($args)

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-010

Berarti sekarang kalo urlnya berada pada /blogs kita akan mendapatkan Page Not Found karena dibagian kodenya kita memberi tahu kalo di urlnya harus ada parameter placeholdernya. Misalnya saya tulis saja belajar-dasar-slim-framework

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-015

Nah disini teman teman lihat ada slug sebagai nama placeholdernya yang telah didaftarkan lalu yang kanan adalah informasi dari judul-blognya. Bentuknya pasangan key dan value

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-011

Artinya kalo teman teman ingin menampilkan dalam bentuk string kita bisa tulis spesifik yaitu menuliskannya seperti ini

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-011

Tentu parameter routenya bisa lebih dari satu tinggal kita pisahkan dengan tanda / (slash)

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-016

Lalu kita return dan sambungkan dengan tanda . (titik) untuk menuliskan argument berikutnya yaitu user

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-012

Jadi itu dia cara kita menyiapkan nilai parameter pada sistem routenya. Kita tinggal menambahkan kurung bracket diawal dan di akhir. Bagaimana kalo misalnya teman teman ingin memberikan parameternya routenya opsional boleh di isi boleh juga tidak. Mungkin saja kita punya slug tapi mungkin juga tidak. Berarti kita bisa sediakan untuk parameter opsional yang di awali dengan kurung kotak. Bentuk penulisannnya seperti berikut

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-017

Kalo teman teman save dan langsung menjalankannya ke url /blog tanpa judulnya kita akan mendapatkan errors yaitu undefined variabel slug

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-013

Kenapa ? karena kita berusaha mengeluarkan argument slug yang pada kasusnya ini tidak kita berikan. Iyah solusinya kita cek apakah $args slug empty atau tidak. Kalo empty maka tolong php tampilkan semua list index blognya

Mengenal-Route-Parameter-Pada-Slim-Framework-18032020-EKI-014

Sebaliknya kalo tidak kosong berarti ada dan urlnya seperti ini /blog/judul-blognya maka return bagian slugnya. Jadi ini dia teknik atau cara menyiapkan parameter opsional pada Slim Framework. Itu dia semoga jelas sampai jumpa dibagian berikutnya. Terima kasih.

Artikel, PHP, PHP Framework, Slim, Micro Framework

Cara Cepat Pintar Membuat Website, Tanpa Perlu Basic IT

Membuat website perusahaan, portal berita, blog, katalog online, dan e-commerce.

Learn More

Cara Cepat Pintar Membuat Website, Tanpa Perlu Basic IT

Membuat website perusahaan, portal berita, blog, katalog online, dan e-commerce.

Learn More