84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
작성자가 Artisan命令,在AppConsole下的command文件内调用getenv方法,来获取.env 구성을 작성하고 결과가 null을 반환합니다.
Artisan
AppConsole
command
getenv
.env
그런데 config/services.php获取.env的配置,再在AppConsole下的command文件调用config메소드를 사용하면 원하는 환경변수 값을 얻을 수 있는 이유는 무엇일까요?
config/services.php
config
공식 제안은 config에서 env를 호출하고 다른 곳에서 config를 호출하는 것입니다.
사실 이것이 큰 함정입니다. 처음 Laravel을 작성했을 때 컨트롤러에서 env를 읽을 수 없다는 것을 알았습니다. (100% 읽을 수 없는 것은 아니고, 단지 php artisan config:cache를 실행한 후에는 읽을 수 없다는 것뿐입니다)
캐싱 및 환경 배포 중에 config:cache 명령을 사용하는 경우 구성 파일 내에서만 env 함수를 호출하고 애플리케이션의 다른 곳에서는 호출하지 않는지 확인해야 합니다. 애플리케이션 내에서 env를 호출하는 경우 구성 파일에 적절한 구성 값을 추가하고 대신 해당 위치에서 env를 호출하여 env 호출을 구성 호출로 변환할 수 있도록 하는 것이 좋습니다.
캐싱 및 환경
배포 중에 config:cache 명령을 사용하는 경우 구성 파일 내에서만 env 함수를 호출하고 애플리케이션의 다른 곳에서는 호출하지 않는지 확인해야 합니다.
애플리케이션 내에서 env를 호출하는 경우 구성 파일에 적절한 구성 값을 추가하고 대신 해당 위치에서 env를 호출하여 env 호출을 구성 호출로 변환할 수 있도록 하는 것이 좋습니다.
https://laravel.com/docs/5.2/...에서 발췌
Laravel에는 보조 기능이 있습니다. env() 예 = =
env()
공식 제안은 config에서 env를 호출하고 다른 곳에서 config를 호출하는 것입니다.
사실 이것이 큰 함정입니다. 처음 Laravel을 작성했을 때 컨트롤러에서 env를 읽을 수 없다는 것을 알았습니다. (100% 읽을 수 없는 것은 아니고, 단지 php artisan config:cache를 실행한 후에는 읽을 수 없다는 것뿐입니다)
https://laravel.com/docs/5.2/...에서 발췌
Laravel에는 보조 기능이 있습니다.
env()
예 = =