CI4 Playground v4.7.3
한국어문서
현재 환경(ENVIRONMENT): development
.env 파일의 CI_ENVIRONMENT 값으로 제어됩니다.
PlaygroundConfig 현재 값

config('PlaygroundConfig')로 읽은 값입니다. .env에 playground.debugMode = true를 추가하면 debugMode가 변경됩니다.

속성타입
$appName CI4 Playground string
$version 1.0.0 string
$debugMode false bool
$maxUpload 5 MB int
$timezone Asia/Seoul string
시스템 환경 정보

CI4 상수, env() 헬퍼, config() 헬퍼로 읽은 값들입니다.

항목
ENVIRONMENTdevelopment
CI 버전4.7.3
PHP 버전8.4.21
Base URLhttps://playground.cikorea.net
DB 드라이버SQLite3
.env 파일.env 파일 존재
BaseConfig 클래스 작성
app/Config/PlaygroundConfig.php
namespace Config;

use CodeIgniter\Config\BaseConfig;

class PlaygroundConfig extends BaseConfig
{
    public string $appName   = 'CI4 Playground';
    public string $version   = '1.0.0';
    public bool   $debugMode = false;
    public int    $maxUpload = 5;       // MB
    public string $timezone  = 'Asia/Seoul';
}
규칙: 클래스명은 대문자로 시작, namespace Config 사용, BaseConfig 상속. 파일 위치: app/Config/
.env 파일로 오버라이드
.env (프로젝트 루트)
# CI4 환경 설정
CI_ENVIRONMENT = development

# PlaygroundConfig 오버라이드
# 클래스명(소문자).속성명 = 값
playground.debugMode = true
playground.maxUpload = 10
playground.timezone  = UTC
주의: .env 파일은 절대 git에 커밋하지 마세요. .gitignore에 반드시 추가하세요.
config() vs new Config() vs env()
// 방법 1: config() 헬퍼 (권장)
// .env 오버라이드가 자동 적용됨
$cfg = config('PlaygroundConfig');
echo $cfg->debugMode;

// 방법 2: new 직접 생성
// .env 오버라이드가 자동 적용됨 (동일)
$cfg = new \Config\PlaygroundConfig();

// 방법 3: env() 헬퍼
// .env 값을 직접 읽음, 없으면 기본값 반환
$debug = env('playground.debugMode', false);
$env   = env('CI_ENVIRONMENT', 'production');

// ENVIRONMENT 상수
if (ENVIRONMENT === 'development') {
    // 개발 환경 전용 코드
}

// 내장 App 설정 읽기
$baseUrl = config('App')->baseURL;
환경별 설정 분리 전략
환경CI_ENVIRONMENT에러 표시디버그 툴바캐시
개발 development 상세 표시 활성화 비활성
테스트 testing 부분 표시 비활성 비활성
운영 production 숨김 비활성 활성화
CI4는 app/Config/ 하위에 환경별 폴더를 만들어 설정을 오버라이드할 수도 있습니다. 예: app/Config/development/Database.php