Controller adalah class yang berisi code untuk menghadle atau merespon request dari user. Misal kalian mengetikan url di browser seperti ini: example.com/product. Codeigiter akan memanggil controller product dan memberikan response balik ke user.
Responsenya apa?
Bergantung dengan kebutuhan. Bisa bentuknya json, xml atau file html.
Respon dalam bentuk json atau xml biasanya digunakan untuk rest api atau ajax. Yang dikirim hanya data. Json atau xml itu hanya bentuk data yang dikirim.
Di dalam controller, selain untuk merespon request dari user, biasanya juga berisi business logic. Misalnya validasi data, pengkondisian dan lain sebagainya.
Di dalam controller, selain untuk merespon request dari user, biasanya juga berisi business logic. Misalnya validasi data, pengkondisian dan lain sebagainya.
Nah, sekarang Anda sudah tahu peran controller.
Lalu, bagaimana cara membuat controller?
Membuat File Controller
Controller itu merupakan class yang di extends dari class CI_Controller. Secara default di tempatkan di dalam folder application/controllers.
[ source code ]
Kode di atas merupakan bentuk sederhana class controller. Sebuah class yang di extend dari CI_Controller yang mempunyai function minimal satu, yaitu index.
Di dalam class controller tidak dibatasi berapa jumlah function yang boleh kita buat. Namun, agar kode kita mudah di pelihara, idealnya di kelompokan menjadi beberapa kelas bergantung dengan konteks.
Routing
Fungsi index akan dipanggil secara default.
Secara default, bentuk url codeigiter akan seperti ini:
http://myapp.com/index.php/blog_controller/function
Ketika ada request dengan url seperti itu, Codeigiter akan mencari controller dengan nama blog kemudian di instansiasi.
Salah satu materi penting untuk dibahas controller.
- File controller disimpan di application/controllers/controller_name
- Untuk memanggil controller tersebut, yaitu dengan memanggil nama classnya.
- Secara default, method index yang akan ditampilkan jika tidak ada method lain yang dipanggil
- melewatkan parameter ke fungsi controller
- menerima input
- menampilkan response
- memanggil view

Tidak ada komentar:
Posting Komentar