Membuat Core Controller Sendiri Di Codeigniter
Tujuan dari menciptakan core sendiri yakni untuk menjegah terjadinya penulisan ulang function pada sebuah controller. Misalkan, pada sebuah perkara saya memiliki function "sapa". Mungkin kurang lebih menyerupai ini function-nya :
function sapa($nama) { $kata = "Hello ".$nama.", bagaimana kabarnya ?"; return $kata; }
Saya memakai codeigniter 3.0.4 dan php 5.6Mungkin diantara kalian ada yang bertanya, "Kenapa gak di buat helper atau library saja ?"
Ya sanggup saja function di atas di buat library atau helper, tapi masalahnya yakni kita harus me-load library atau helpernya dulu sebelum memanggil function itu. Jika kita menciptakan core sendiri, kita tidak usah meload-nya.
Sedikit ngasih tau, pada pratik kali ini kita akan sedikit memodif core "CI_controller" yang selalu kita extend pada controller dan menggantikannya dengan core controller buatan kita sendiri.
Jika kau bertanya apa gunanya kita harus wajib meng-extend CI_controller ?
Jawabannya adalah, pada CI_controller terdapat fungsi yang selalu kita gunakan pada ketika kita menciptakan controller, dan otomatis jikalau kita tidak meng-extend-nya maka fungsi itu tidak akan sanggup di gunakan. Fungsi yang terdapat pada CI_controller yakni $this->load , niscaya kalian tahu kegunaan fungsi itu buat apa. Yups betul fungsi itu berkhasiat untuk :
- $this->load->library (...);
- $this->load->helper(...);
- $this->load->model(...);
- $this->load->view(...);
Oke kembali ke materi, cara menciptakan core controller sangatlah mudah, pertama buat file gres dengan nama MY_controller.php pada application/core, berikut aba-aba nya :
class MY_controller extends CI_controller { function sapa($nama) { $kata = "Hello ".$nama.", bagaimana kabarnya ?"; return $kata; } }
Kedua, tambahkan aba-aba berkut ini pada application/config/config.php, letakan di bab paling bawah :
function kang_controller($class) { if (strpos($class, 'CI_') !== 0) { if (is_readable(APPPATH . 'core/' . $class . '.php')) { require_once(APPPATH . 'core/' . $class . '.php'); } } } spl_autoload_register('kang_controller');
Setelah semuanya simpulan di lakukan, barulah kau sanggup meng-extend conre controller kau pada controller. Berikut tumpuan controller, dan cara pemanggilan function yang terdapat pada core MY_controller.php
class Welcome_controller extends MY_controller { function index() { echo $this->sapa("Cahya"); // kesannya :: Hello Cahya, bagaimana kabarnya ? } }
Ada satu lagi yang kelupaan, untuk penamaan core harus di awali dengan prefix MY_ , jikalau kau tidak mau memakai prefix MY_ pada penamaan core mu, kau sanggup sunting application/config/config.php di baris 120 tepatnya pada bab :
$config['subclass_prefix'] = 'MY_';
Mungkin cukup sekian dulu, jikalau ada yang kurang paham tulis saja komentar yah :)
auf wiedersehen :) Sumber http://www.kang-cahya.com
0 Response to "Membuat Core Controller Sendiri Di Codeigniter"
Posting Komentar