이제 많은 프레임워크는 루트 디렉터리의 .env 파일을 사용하여 환경 변수를 구성합니다. PHP 자체는 이 파일을 구문 분석하지 않고 이 파일을 읽고 구문 분석하여 환경 변수에 입력해야 합니다.
예를 들어 thinkphp에서 .env 파일의 로딩 프로세스를 보려면 다음 strace 명령을 사용하여 fpm 프로세스 stat 파일의 상태를 확인하세요.
strace $(pidof 'php-fpm'|sed 's/([0-9]*)/-p 1/g') -e stat -s 1024
반품 항목은 .env 파일이 존재하는지 확인하는 것입니다.
[pid 11692] stat("/data1/mailLog/public/phpdev/xxx/xxx/.env", 0x7fff6ba5f9f0) = -1 ENOENT (No such file or directory)
에서 처리되는 코드는 다음 문장입니다
if (is_file(ROOT_PATH . '.env')) { $env = parse_ini_file(ROOT_PATH . '.env', true); foreach ($env as $key => $val) { $name = ENV_PREFIX . strtoupper($key); if (is_array($val)) { foreach ($val as $k => $v) { $item = $name . '_' . strtoupper($k); putenv("$item=$v"); } } else { putenv("$name=$val"); } } }
더 많은 PHP 관련 지식을 알고 싶다면 php tutorial을 방문하세요!
위 내용은 PHP 프레임워크의 .env 파일 로드 프로세스 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!