런타임에 구성 항목에 액세스해야 하는 경우 Config 클래스를 사용할 수 있습니다.
구성 항목의 값 가져오기**
구성 항목이 존재하지 않는 경우 반환되는 기본값을 지정할 수도 있습니다.
구성 항목에 값 할당
"점" 구문을 사용하여 다양한 파일의 구성 항목 값에 액세스할 수 있습니다. 런타임 시 구성 항목에 값을 할당할 수도 있습니다. :
프로그램 실행 시 설정된 구성 값은 해당 요청에서만 유효하며 향후 요청에는 영향을 미치지 않습니다.
환경구성
일반적으로 애플리케이션이 다양한 실행 환경에 따라 다양한 구성 항목의 값을 결정하는 것이 매우 유용합니다. 예를 들어 개발 컴퓨터와 프로덕션 컴퓨터에서 서로 다른 캐시 드라이버를 사용하려고 할 수 있습니다. 이는 환경에 따라 구성을 변경하면 쉽게 달성할 수 있습니다.
config 디렉터리에 local과 같은 환경 이름과 동일한 이름으로 디렉터리를 만듭니다. 그런 다음 재정의하려는 구성 옵션이 포함된 구성 파일을 만듭니다. 예를 들어 로컬 환경에서 캐시 드라이버를 재정의하려면 app/config/local 디렉터리에 캐시.php 파일을 만들고 다음 콘텐츠를 포함할 수 있습니다.
배열 반환(
'드라이버' => '파일',
);
참고: 'testing'을 환경 이름으로 사용하지 마십시오. 단위 테스트용으로 특별히 예약되어 있습니다.
기본 구성 파일의 모든 구성 항목에 대해 값을 지정할 필요는 없으며 재정의해야 하는 구성 옵션만 지정하면 됩니다. 환경 구성 파일은 "계단식" 방식으로 기본 구성 파일을 재정의합니다.
다음으로 프레임워크의 운영 환경을 결정하는 방법을 안내해야 합니다. 기본 환경은 항상 프로덕션입니다. 그러나 설치 디렉터리의 루트에 있는 bootstrap/start.php 파일에서 다른 환경을 설정할 수 있습니다. 이 파일에서 $app->DetectEnvironment 메소드에 대한 호출을 찾을 수 있습니다. 전달된 배열 매개변수는 현재 실행 환경을 결정하는 데 사용됩니다. 필요에 따라 다른 환경이나 시스템 이름을 추가할 수 있습니다.
$env = $app->탐지환경(배열(
'local' => array('컴퓨터 이름'),
));
이 경우 'local'은 실행 중인 환경의 이름이고 'your-machine-name'은 서버의 호스트 이름입니다. Linux 및 Mac에서는 호스트 이름 명령을 사용하여 사용 중인 시스템의 호스트 이름을 확인할 수 있습니다.
환경을 확인하는 보다 유연한 방법이 필요한 경우, detectorEnvironment 호출 시 클로저(Closure)를 전달하여 자신만의 방식으로 환경을 확인할 수 있습니다.
현재 애플리케이션 환경 얻기
일반적으로 환경 메소드를 호출하여 현재 애플리케이션 환경을 얻을 수 있습니다.
또한 환경 메소드에 매개변수를 전달하여 애플리케이션 환경이 주어진 값과 일치하는지 확인할 수도 있습니다.
if (App::environment('local', 'staging'))
{
// 환경은 로컬이거나 스테이징입니다...
}
유지관리 모드
애플리케이션이 유지 관리 모드에 있으면 모든 경로가 사용자 정의 보기를 가리킵니다. 이는 애플리케이션을 업데이트하거나 유지 관리 작업을 수행할 때 현재 애플리케이션을 일시적으로 "비활성화"하는 데 편리합니다. App::down 메소드는 app/start/global.php 파일에 정의되어 있으며 유지 관리 모드에서 사용자에게 이 메소드의 출력을 표시합니다.
유지관리 모드를 활성화하려면 Artisan의 down 명령을 실행하세요:
유지관리 모드를 끄려면 up 명령을 실행하세요.
애플리케이션이 유지 관리 모드에 있을 때 사용자 정의 보기를 표시해야 하는 경우 app/start/global.php 파일에 다음 코드를 추가하기만 하면 됩니다.
유지관리 모드 및 대기열
애플리케이션이 유지 관리 모드에 있는 동안에는 새로운 대기열 작업이 허용되지 않습니다. 애플리케이션이 유지 관리 모드를 종료하면 대기 중인 작업 처리가 정상으로 돌아갑니다.