Currently I\'m using codeigniter
version 3.0. I want to know how to implement HMVC structure in it, can anyone help?
1 Step : Download
https://github.com/Crypt/Codeigniter-HMVC/tree/master/core
Copy MY_Loader.php , MY_Router.php
paste in
application/core
directory
2 : step Download https://github.com/Crypt/Codeigniter-HMVC/tree/master/libraries
MX folder
Paste in
application/third_party
3 :Step modules/routes.php
$route['default_controller'] = 'index.php/Home/Home/index';
4: step create new folder (Home) in directory application/modules
5: step application/modules/Home in new Folder (controllers ,models,views)
Directory Structure e.g.
__application
__modules
__Home
__controllers
__Home.php
__modules
__home.php
__views
__home.php
6 : step application/modules/Home/controllers in (Home.php)
<?php
class Home extends MY_Controller
{
function __construct()
{
parent::__construct();
}
public function index()
{
echo "WELOME TO HERE";
}
}
?>
You can use the template to understand how to use HMVC in codeigniter. You can also use the Rest-API with HMVC Module.
Download the full HMVC module:
https://github.com/salimmansoori1994/full_ci_set
codeigniter 3 hmvc modules folder for:
https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/downloads
1- Download files and copy C.i.3.0 forder in application
2- .htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
3- create /application/modules
4- /application/modules/welcome create in controllers, models, views
5- Create /application/modules/welcome/controllers/Welcome.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function index()
{
$this->load->view('welcome_message');
}
}
enjoy :)
IMPORTANT : 'controllers' and 'models' initials files in the folder should be large. 'views' of files per folder in the letter should be small
Use the new version from here. https://github.com/N3Cr0N/HMVC
original source not updated since many years and it gives errors.
Installing process is there on readme file.