include_once()
include_once()문은 스크립트 수행기간동안 특정파일을 인클루드하고 적용시킨다. 이것은 include()문과 비슷하게 동작한다. 단지 파일의 특정 코드가 이미 인클루되었다면 그 코드는 다시는 인클루드 될수 없다는 차이점만 있다. 이 이름이 제시하듯이 한번만 인클루드할것이다.
include_once()는 특정 스크립트 수행기간동안 동일한 파일이 한번 이상 인클루드되고 적용될지도 모르는 상황에서 사용해야 할것이다. 그리고 함수 중복정의, 변수값 중복 지정 등의 문제를 회피하려면 정확히 한번만 인클루드할 때가 있을것이다.
require_once()와 include_once()의 더 많은 사용예는, 최신 PHP소스 내의 » PEAR코드를 참고할것
반환값은 include()와 동일합니다. 파일이 이미 포함되었면, TRUE를 반환합니다.
Note: include_once()는 PHP 4.0.1에서 추가됨
Note: include_once()와 require_once()는 대소문자를 구별하지 않는 운영체제(윈도우같은)에서 기대와 다르게 작동할수도 있다.
이 동작은 PHP 5에서 바뀌었습니다 - 경로가 먼저 표준화되기 때문에 C:\PROGRA~1\A.php은 C:\Program Files\a.php와 동일하게 인식하고, 파일은 딱 한번만 포함하게 됩니다.Example#1 include_once()는 윈도우에서 대소문자를 구별하지 못합니다.
<?php
include_once("a.php"); // a.php를 포함합니다.
include_once("A.php"); // 윈도우에서 또다시 a.php를 포함합니다. (PHP 4만)
?>
PHP 4.3.0 이후의 Windows 버전 PHP에서는 이 함수를 이용하여 원격 파일에 접근할 수 없습니다. allow_url_fopen을 활성화하여도 마찬가지입니다.
참고: include(), require(), require_once(), get_required_files(), get_included_files(), readfile(), virtual().