네 가지 종류의 명령문
PHP에는 파일을 로드하는 명령문이 4개 있습니다: 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와 동일한 기능을 가지고 있습니다. 차이점은 실행될 때 먼저 대상 콘텐츠를 가져왔는지 여부를 먼저 확인한다는 것입니다. 내용을 다시 소개합니다.
관련 권장 사항: "php tutorial"
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!