Di Codeigniter 1.72 saya menggunakan Matchbox untuk modular extention. Dengan Matchbox, saya bisa mengatur applikasi yang saya buat menjadi komponen-komponen terpisah atau secara modular. Sekarang Codeigniter sudah versi 2, sementara Matchbox sudah tidak pernah disentuh lagi oleh pembuatnya. Akhirnya saya pake Modular Extensions – HMVC atau ME-HMVC untuk Codeigniter.
Di bawah ini adalah helper untuk ME-HMVC, dibuat berdasarkan Philip Sturgeon’s Matchbox helper, dengan sedikit perubahan minor. Masih kasar, belum ditest semua, untuk catatan saja supaya ga lupa.
<?php if (!defined('BASEPATH')) exit('No direct script access allowed.'); function module_directories() { return Modules::$locations; } function module_array() { $module_arr = array(); foreach (module_directories() as $key=>$value) { foreach(glob($key.'*', GLOB_ONLYDIR) as $module) { array_push($module_arr, array('module'=>basename($module), 'path'=>$key)); } } return $module_arr; } function is_module($module) { if(!$module) return FALSE; foreach (module_directories() as $key=>$value) { if (is_dir($key.basename($module))) { return TRUE; } } return FALSE; } ?>