>  기사  >  PHP 프레임워크  >  laravel 프레임워크의 .env 파일과 config 디렉터리의 구성 파일 간의 관계

laravel 프레임워크의 .env 파일과 config 디렉터리의 구성 파일 간의 관계

齐天大圣
齐天大圣원래의
2020-12-11 21:50:161912검색

나처럼 많은 어린이들이 문서를 읽을 때 .env 파일과 config 디렉터리의 구성 파일을 혼동했을 수도 있습니다. 오늘은 이들의 이전 관계를 살펴보겠습니다.

.env 파일과 config 디렉터리 구성 파일의 관계

우선 문서에는 laravel모든 구성 파일이 config 디렉터리의 파일에 저장된다고 나와 있습니다. 그렇다면 루트 디렉터리의 .env 파일은 정확히 어떤 용도로 사용됩니까? .env 파일과 config/app.php 파일을 열어보겠습니다

# .env文件
APP_NAME=Laravel
……    
# app.php文件
'name' => env('APP_NAME', 'Larave'),

이것을 보면 기본적으로 일반적인 의미를 짐작할 수 있습니다.config 디렉토리의 구성 파일 구성 항목이 env 함수를 사용하는 경우 이 옵션이 .env 파일에 구성되어 있으면 .env 파일의 값이 사용되고, 그렇지 않으면 구성 파일에 설정된 기본값이 사용됩니다. 다음으로 추측을 확인해 보겠습니다. 먼저 테스트 코드를 작성하세요:

return config('app.name');

그런 다음 .env 파일의 APP_NAME을 boy로 변경하고 app.php 파일의 기본값을 girl으로 변경합니다

APP_NAME=boy
……
'name' => env('APP_NAME', 'girl'),

흥미로운 문제를 발견했는데 테스트 코드에서 결과가 반환되었습니다. 여전히 Laravel입니다. 그런 다음 php artisan Serve를 다시 시작한 다음 다시 새로 고침하여 결과는 boy였습니다. 이를 통해 내 추측이 정확했음을 확인했지만 또 다른 추측으로 이어졌습니다.

사용된 구성 값이 .env 파일에 있는 경우 .env 파일의 값을 수정하면 즉시 적용되지 않고 이후에만 적용됩니다. restarting

또 다른 추측을 확인하기 위해 .env에서 APP_NAME 줄을 삭제한 다음 다시 시작했습니다. 테스트 결과는 소녀입니다. 다음으로 girl을 girl1로 변경한 다음 브라우저를 새로 고쳤고 반환 값은 girl1이었습니다. 그래서 내 결론이 맞는 것으로 확인됐다.

여기에 요약하면:

config 디렉터리의 구성 파일 구성 항목이 env 함수를 사용하는 경우 이 옵션이 .env 파일에 구성되어 있으면 .env 파일의 값이 사용됩니다. 그렇지 않으면 구성 파일에 설정된 값이 사용됩니다. 기본값
  • 사용된 구성 값이 .env 파일에 있으면 .env 파일의 값을 수정해도 즉시 적용되지 않습니다. 적용되세요

위 내용은 laravel 프레임워크의 .env 파일과 config 디렉터리의 구성 파일 간의 관계의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.