Forum und email

require_once()

require_once()문은 스크립트 수행기간 중에 특정파일을 인클루드하고 적용시킨다. 이것은 require()문과 비슷하게 동작한다. 오직 파일의 코드가 이미 인클루드되었다면 다시 인클루드되지 않을것 이라는 차이점이 있다. 이 구문이 어떻게 작용하는지에 대한 정보를 알아보려면 require()함수에 대한 문서를 보세요.

require_once()는 특정 스크립트 수행기간동안 한번이상 인클루드되고 적용될수 있는 상황에서 사용하도록 한다. 그리고 함수 중복 정의와 변수값 중복 지정 등에 대한 문제를 회피하기 위해서는 정확히 한번 인클루드될 필요가 있을것이다.

require_once()include_once()의 사용예는 최신 PHP 소스코드 안에 포함된 » PEAR코드를 참고할것.

반환값은 include()와 동일합니다. 파일이 이미 포함되었면, TRUE를 반환합니다.

Note: require_once()는 PHP 4.0.1에 추가되었다.

Note: require_once()include_once()은 대소문자를 구별하지 않는 운영체제(윈도우 같은)에서는 기대하던대로 동작하지 않을지 모른다.

Example#1 require_once()는 윈도우에서 대소문자를 구별하지 못합니다.

<?php
require_once("a.php"); // a.php를 포함합니다.
require_once("A.php"); // 윈도우에서 또다시 a.php를 포함합니다. (PHP 4만)
?>
이 동작은 PHP 5에서 바뀌었습니다 - 경로가 먼저 표준화되기 때문에 C:\PROGRA~1\A.phpC:\Program Files\a.php와 동일하게 인식하고, 파일은 딱 한번만 포함하게 됩니다.

Warning

PHP 4.3.0 이후의 Windows 버전 PHP에서는 이 함수를 이용하여 원격 파일에 접근할 수 없습니다. allow_url_fopen을 활성화하여도 마찬가지입니다.

참고: require(), include(), include_once(), get_required_files(), get_included_files(), readfile(), virtual().