CI4

[코드이그나이터] 모듈화

으누아빠 2020. 9. 3. 16:01
반응형

모듈화

출처:
http://ci4doc.cikorea.net/general/modules.html

CI3 에서 말하는 HMVC 형태를 CI4 에서 처리하는 방법이라고 생각하면 쉬울듯

  1. 디렉토리 구성

     - modules
         - main
             - Config
             - Controllers
             - Models
             - Views
  2. app\Config\Autoload.php 파일내 $psr4 에 관련 정보 추가

     public $psr4 = [
         APP_NAMESPACE => APPPATH, // For custom app namespace
         'Config'      => APPPATH . 'Config',
         //새로 추가
         'Modules'      => ROOTPATH . 'modules' 
     ];
  3. app\Config\Routes.php 파일내 관련 라우터 정의

     /**
     * --------------------------------------------------------------------
     * Route Definitions
     * --------------------------------------------------------------------
     */
    
     // We get a performance increase by specifying the default
     // route since we don't have to scan directories.
     $routes->get('/', 'Home::index');
     $routes->get('main', '\Modules\Main\Controllers\Main::index');
  4. modules\main\Controllers\Main.php 추가

     modules\main\Controllers\Main.php
    
     <?php
    
     namespace Modules\Main\Controllers;
    
     use CodeIgniter\Controller;
    
     class Main extends Controller
     {
         public function index()
         {
             $data = array();
             echo "this is main!!";
         }
     }