먼저 말씀드릴 점은 include, include_once, require, require_once의 핵심 기능이 모두 동일하다는 점입니다. 이는 대상 웹페이지의 코드를 직접 복사하는 것과 같습니다.
기본적으로 성능을 고려하지 않는다면, include, include_once, require, require_once를 이용하면 기본적인 효과를 얻을 수 있습니다. 기본적으로 원하는 대로 사용하세요.
사소한 차이점은 다음과 같습니다.
예를 들어 1.php에는 간단한 print 문이 있습니다.
<?php echo "1" ?>
<?php include '1.php'; require '1.php'; include_once '1.php'; require_once '1.php'; ?>
<?php include_once '1.php'; require_once '1.php'; include '1.php'; require '1.php'; ?>
_once는 이전에 소개된 내용이 더 이상 소개되지 않는다는 의미이지만, 이 문은 가져온 웹페이지의 코드가 동일한지 확인하지 않는다는 점에 유의할 필요가 있습니다. untitled.html 및 untitled1.html 코드가 정확히 동일한 페이지는 다음과 같습니다.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" c/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> </body> </html>
<?php include_once 'untitled.html'; include_once 'untitled1.html'; ?>
같은 부분이 두 번 나오는 걸 보세요. _once는 파일 이름을 사용하여 이전에 소개되었는지 여부를 확인합니다.
따라서 _once는 이름이 다른 동일한 리소스가 여러 번 소개되는 현상을 막을 수 없습니다.
가져온 파일을 처리하는 다양한 방법 외에도 include와 require의 가장 큰 차이점은 include가 존재하지 않는 파일을 도입할 때 경고를 생성하고 스크립트가 계속 실행되는 반면 require는 오류를 발생시킨다는 것입니다. 치명적인 오류가 발생하고 스크립트 실행이 중지됩니다.
예를 들어, a.php가 존재하지 않는 경우 다음 코드는 여전히 b를 출력합니다:
<?php include 'a.php'; echo 'b'; ?>
<?php require 'a.php'; echo 'b'; ?>
다음과 같은 차이점도 있습니다.
include()는 조건부 포함 함수이고, require()는 무조건 포함 함수입니다.
if(FALSE){ include 'file.php'; //file.php不会被引入 } if(FALSE){ require 'file.php'; //file.php将会被引入 }
$retVal = include(’somefile.php’); if(!empty($retVal)){ echo “文件包含成功”; }else{ echo “文件包含失败”; }
include()를 실행할 때 참조해야 하는 파일은 매번 읽어서 평가해야 합니다. require()를 실행할 때 참조해야 하는 파일은 실제로 한 번만 처리됩니다. 실행 중에 참조해야 하는 파일 중 require.() 문을 대체하는 경우 이러한 명령어 중 하나를 포함하는 코드와 여러 번 실행될 수 있는 코드가 있는 경우 require()를 사용하는 것이 더 효율적임을 알 수 있습니다. 코드가 실행될 때마다 다른 파일을 읽거나 For file 반복 루프가 있는 경우 include()를 사용하십시오.
require가 일반적으로 사용됩니다. 이 함수는 일반적으로 PHP 프로그램이 실행되기 전에 먼저 require에 지정된 파일을 읽어서 PHP 프로그램의 일부로 만듭니다. 웹페이지를 공유합니다. 일반적으로 사용되는 기능을 이러한 방식으로 웹 페이지에 도입할 수도 있습니다. 일반적으로 include 방식을 사용하며, 이 기능은 주로 프로세스 제어의 처리 부분에 배치됩니다. PHP 프로그램 웹 페이지는 포함 파일을 읽을 때만 해당 파일을 읽습니다. 이러한 방식으로 프로그램 실행 프로세스를 단순화할 수 있습니다.
또한, include 및 require 뒤에 괄호를 추가할지 여부에 대한 문제는 이론적으로 include와 require의 실행 결과에는 차이가 없으나, 괄호를 추가하는 것은 효율성이 떨어지므로 괄호를 생략할 수 있습니다. 나중에 괄호를 추가하지 마세요.
저작권 안내: 이 글은 해당 블로거의 원본 글이므로 블로거의 허락 없이 복제할 수 없습니다.
위에는 include, include_once, require, require_once의 차이점을 관련 내용을 포함하여 소개하고 있는데, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.