PHP include 와 require 차이

생판처음보는 PHP소스를 살펴보면서 제일 간단한 명령어인 include 명령어를 사용해서 헤드나 필요 소스파일 페이지를 불러와서 사용을 하였습니다. 그런데 제가 받아본 소스에 require 라는 명령어로 include와 똑같이 사용하는 구문이 보여서 너무나 헷갈렸습니다.

과연 두 명령어에 어떤 차이가 있길래 이렇게 헷갈리게 하는 것일까요? 오늘은 PHP include 와 require 차이점이 뭐가 있는 지 살펴보고 활용하는 방법에 대해서 알아보려 합니다.

 

PHP에서의 include

우선 include의 경우 말그대로 페이지 전체를 삽입을 하는 기능입니다. 문서의 구조와는 상관없이 include를 한 시점에 해당 문서를 그대로 출력을 하게 되는데 만약 include한 문서가 오류가 있으면 오류가 생긴문서에서 내용을 확인할 수가 있습니다.

 

 

 

PHP에서의 require

 여기 require 명령어의 경우 include와 사용하는 부분은 똑같습니다. 다만 차이점이 있다면 페이지디버깅시에 차이가 많이 생깁니다. require의 경우 문서를 포함시켜버리기 때문에 로드한 페이지에 오류가 있어도 로드된 페이지에서 오류가 잡히게 됩니다.

그래서 require로 개발을 하게 되면 오류페이지를 잡기 힘들기 때문에 include로 먼저 문서를 로드하고 배포시에 require 로 바꾸는 작업을 한다고 합니다.

그리고 페이지 처리속도가 차이가 많이 난다고 하는데요. include가 조금 느리다고 합니다.