[PHP] include 와 include_once and require 와 require_once 차이점
* include()
- 일반적인 document Embeded 방식이다.
- 이 문장을 만날 때 마다 매번 재평가되어 재실행된다
- include 문장을 만날때마다 지정한 파일을 포함한다.
- loop나 if 문 등에서 사용하여 필요한 경우에만 파일을 포함하도록 할 수 있다.
- 해당 구문에 도달해야만 읽어 온다
- Error발생시 Warning을 일으킨다는 특징이 있다.
* include_once()
- 한번만 include한다는 뜻
- include()와 대부분 동일한 수행을 한다
- 하지만 문서에 이미 로드된 동일 문서가 있다면
- include_once()는 더이상 include하지 않는다는 차이점이 있다.
- 즉 A.php라는 파일에 function A() 라는 사용자 함수가 정의되어 있을때...
A.php를 여기 저기서 include or require하게되면 중복된 함수 정의라는 에러가 발생합니다..
이것을 막고자 할때 사용합니다.
- 즉, include()가 경고(E_WARNING)만 발생하고 스크립트는 계속 진행되는 것과 달리, 스크립트가 중단됩니 다. 작동에 관해서는 include() 문서를 참고하십시오.
* require()
- require()는 실패시에 치명적인 E_ERROR 등급 오류가 발생한다는 점을 제외하면, include()와 동일합니다.- 즉, include()가 경고(E_WARNING)만 발생하고 스크립트는 계속 진행되는 것과 달리, 스크립트가 중단됩니 다. 작동에 관해서는 include() 문서를 참고하십시오.
* require_once()
- 한번만 require한다는뜻
- 중복된 require를 방지하는 제어문 입니다.
- 즉 A.php라는 파일에 function A() 라는 사용자 함수가 정의되어 있을때...
A.php를 여기 저기서 include or require하게되면 중복된 함수 정의라는 에러가 발생합니다..
이것을 막고자 할때 사용합니다..
require_once() or include_once()를 사용하면 이미 로딩된 파일은 중복해서 읽어 들이지 않습니다.