/**
 * ----------------------------------------------------------------------------------------------
 *                         ORANGE-PMI PLATFORM (PMI: PHP·MySQL·Infra)                         
 *                                   Version 1.0.0                                            
 *        Modular Web Architecture · Powered by Orangecommunication · www.oranc.kr          
 * ----------------------------------------------------------------------------------------------
 */




https://opmi.oranc.kr/main/pjprgsin/view?pp_code=VPW1Rb4UNnQl


http://180.228.109.10/~newcms/site/main/iacf-programall/
http://180.228.109.10/~newcms/site/main/iacf-programall/vC2QDTarwSu67fdaad7/jikup/jeryo?action=update
http://180.228.109.10/~newcms/site/main/communication-board/1?action=form



config('database.host');       // 파일
setting('site.name');          // DB



/public_html/index.php
├── 1. 플랫폼 선언 및 부팅 시간 기록
│   ├── define('GUAVAPLATFORM', true)
│   └── define('GUAVA_START', microtime(true))

├── 2. 에러 레벨 설정
│   ├── error_reporting(E_ALL)
│   └── ini_set('display_errors', 1)

├── 3. 보안 헤더 설정
│   ├── header('X-Content-Type-Options: nosniff')
│   ├── header('X-XSS-Protection: 1; mode=block')
│   ├── header('X-Frame-Options: SAMEORIGIN')
│   ├── header('Referrer-Policy: strict-origin-when-cross-origin')
│   ├── header('Permissions-Policy: camera=(), microphone=(), geolocation=()')
│   └── header("Content-Security-Policy: default-src 'self'; script-src 'self'; object-src 'none'")

├── 4. 경로 헬퍼 로딩
│   └── require_once __DIR__.'/_core/Support/path_helpers.php'
│       └─ base_path(), config_path(), app_path(), storage_path() 등 함수 활성화

├── 5. DI 컨테이너 초기화
│   └── $container = require_once base_path('bootstrap/app.php')
│       ├── Composer Autoload 로딩
│       ├── .env 환경변수 로딩
│       ├── DI 컨테이너 빌드 및 서비스 정의 로딩
│       └── config 설정 캐시 초기화

├── 6. 글로벌 헬퍼 로딩
│   └── $container->get(Core\Support\HelperLoader::class)->load()
│       └─ config(), env(), request(), purifier() 등 전역 함수 등록

├── 7. Request 테스트 (필터체인 예시)
│   └── request('@all')->input('test')

├── 8. DB 설정 및 연결
│   └── require_once base_path('db.php')
│       └─ Eloquent Capsule 설정 및 연결

├── 9. Eloquent 모델 테스트
│   ├── use App\guava\Models\User
│   ├── User::all()
│   └── User::where('user_id', 'admin')->first()

├── 10. SQL 실행 로그 출력
│   └── DB::getQueryLog()
│       ├── query, bindings, time 등 출력
│       └── 디버깅용 실행 결과 확인

├── 11. 실행시간 측정 및 출력
│   └── microtime(true) - GUAVA_START
│       └── 접속 처리 시간 출력

├── [예정] 12. 요청 파서 및 라우터 인스턴스화
│   ├── $request = new Core\Routing\RequestParser()
│   └── $router  = $container->get(Core\Routing\Router::class)

├── [예정] 13. 동적 라우팅 불러오기
│   └── $router->loadDynamicRoutes()
│       └── DB 또는 config 기반 라우팅 등록

├── [예정] 14. 미들웨어 실행
│   └── $middlewareRunner->handle($request)
│       └── 인증, CSRF, 권한 검사 등

├── [예정] 15. 라우터 매칭 및 컨트롤러 실행
│   └── $response = $router->dispatch($request)

└── [예정] 16. 응답 렌더링 및 출력
    └── echo $viewRenderer->render($response)->getContent()