네 가지 종류의 명령문
PHP에서 파일을 로드하는 데에는 네 가지 명령문이 있습니다: include
、require
、include_once
、require_once
.
기본 구문
require: require 함수는 일반적으로 PHP 스크립트 앞에 배치됩니다. PHP가 실행되기 전에 먼저 require로 가져온 파일을 읽고 가져온 스크립트 파일을 포함하고 실행을 시도합니다. require가 작동하는 방식은 PHP의 실행 효율성을 높이는 것입니다. 동일한 웹 페이지에서 한 번 해석된 후에는 두 번째로 해석되지 않습니다. 그러나 마찬가지로 가져온 파일을 반복적으로 해석하지 않기 때문에 PHP에서 파일을 삽입하기 위해 루프나 조건문을 사용할 때 include를 사용해야 합니다.
include: PHP 스크립트의 어느 곳에나 배치할 수 있으며 일반적으로 프로세스 제어의 처리 부분에 배치할 수 있습니다. include로 지정된 파일에 PHP 스크립트가 실행되면 해당 파일이 포함되어 실행을 시도합니다. 이 방법을 사용하면 프로그램 실행 과정을 단순화할 수 있습니다. 동일한 파일을 두 번째로 만나면 PHP는 이를 다시 해석합니다. 동시에 사용자 정의 함수가 가져온 파일에 포함되는 경우에는 include의 실행 효율성이 훨씬 낮습니다. PHP는 해석 과정에서 함수 정의가 반복되는 문제가 있습니다.
require_once / include_once: 기능은 각각 require / include와 동일합니다. 차이점은 실행 시 대상 콘텐츠를 이전에 가져왔는지 먼저 확인한다는 점입니다. 같은 내용을 다시 소개합니다.
include와 require의 차이점:
include에는 반환 값이 있고 require에는 반환 값이 없습니다.
include는 파일 로드에 실패할 때 경고(E_WARNING)를 생성하고 오류가 발생한 후에도 스크립트가 계속 실행됩니다. 그래서 계속해서 실행하고 결과를 사용자에게 출력하고 싶을 때 include를 사용합니다.
//test1.php <?php include './tsest.php'; echo 'this is test1'; ?> //test2.php <?php echo 'this is test2\n'; function test() { echo 'this is test\n'; } ?> //结果: this is test1
require는 로드에 실패할 때 치명적인 오류(E_COMPILE_ERROR)를 생성하고 오류가 발생한 후 스크립트 실행을 중지합니다. 일반적으로 후속 코드가 로드된 파일에 따라 달라질 때 사용됩니다.
//test1.php <?php require './tsest.php'; echo 'this is test1'; ?> //test2.php <?php echo 'this is test2\n'; function test() { echo 'this is test\n'; } ?>
결과:
include 및 include_once:
include는 include 문이 있는 한 로드된 파일이 반복되는지 여부를 결정하지 않습니다. 반복 로딩이 발생할 수 있습니다) ). include_once가 파일을 로드할 때 이전 코드가 로드되었는지 여부를 결정하는 내부 판단 메커니즘이 있습니다. 여기서 주목해야 할 점은 include_once는 파일의 내용(즉, 가져올 두 파일의 내용이 동일한 것)이 아닌, 동일한 경로의 파일을 이전에 가져왔는지 여부를 기준으로 판단한다는 점입니다. , include_once를 사용하면 여전히 두 가지가 발생합니다).
//test1.php <?php include './test2.php'; echo 'this is test1'; include './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1this is test2 //test1.php <?php include './test2.php'; echo 'this is test1'; include_once './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1 //test1.php <?php include_once './test2.php'; echo 'this is test1'; include './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1this is test2 //test1.php <?php include_once './test2.php'; echo 'this is test1'; include_once './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1
require 및 require_once: include 및 include_once와 동일한 차이점입니다.
추천 튜토리얼: PHP 비디오 튜토리얼
위 내용은 PHP 파일을 포함하는 여러 가지 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!