PHP 프레임워크 컨트롤러 계층이 .tpl 접미사가 있는 파일을 로드하는 이유는 무엇입니까?
<?php
//질문, 확장자가 .tpl인 파일도 PHP 스크립트를 실행할 수 있는 이유는 무엇입니까? .PH 파일을 사용해야만 PHP를 구문 분석할 수는 없나요?
某草草2017-05-16 17:08:08
PHP 인터프리터는 파일 내용에만 관심을 갖고 확장자가 무엇인지는 상관하지 않습니다
새 파일을 열 때마다 새 인터프리터를 여는 대신 한 번의 컴파일 및 실행 주기로 코드에 다른 파일을 요구/포함합니다
다른 파일과 쉽게 구별하기 위해 웹 서버에서 특정 확장자를 구성하여 PHP로 전송합니다. 이는 항목 파일에 대한 제한일 뿐이며 나중에 필수/포함되는 내용은 없습니다. 이 구성을 수행하지 않으면 어떤 파일 형식이든 검토를 위해 PHP로 전송됩니다. 이는 성능 및 보안 고려 사항으로 인해 비현실적입니다(즉, PHP와 웹 서버를 독립적으로 처리해야 함)
예를 들어
nginx의 경우
아파치의 경우
으아악실제로 원하는 확장자로 변경할 수도 있고 완전히 일치시킬 수도 있습니다(물론 권장하지는 않습니다)
淡淡烟草味2017-05-16 17:08:08
프레임워크 자체가 .tpl 파일을 로드하고 이를 PHP 코드로 구문 분석합니다. 이는 PHP로 xml 파일을 로드한 다음 xml을 구문 분석하여 출력하는 것과 같습니다. 내가 말한 것이 정확하지는 않지만 거의 같은 의미입니다.