PHP 포함 파일
PHP 포함 및 요구문
PHP에서는 다음에서 실행할 수 있습니다. 파일 내용을 파일에 삽입하기 전에 서버 PHP 파일을 삭제하세요.
include 및 require 문은 다른 파일에 작성된 유용한 코드를 실행 흐름에 삽입하는 데 사용됩니다.
· 필수는 치명적인 오류(e_compile_error)를 생성하고 스크립트 실행을 중지합니다. 오류가 발생한 후. · include는 경고(E_WARNING)를 생성하고 오류가 발생한 후에도 스크립트가 계속 실행됩니다. 그래서 포함된 파일이 없어도 계속 실행하고 결과를 사용자에게 출력하려면 include를 사용하세요. 그렇지 않은 경우 프레임워크, CMS 또는 복잡한 PHP 애플리케이션 프로그래밍에서는 항상 require를 사용하여 실행 흐름에 대한 키 파일을 참조하세요. 이는 중요한 파일이 실수로 손실된 경우 애플리케이션 보안과 무결성을 향상시키는 데 도움이 됩니다. 파일을 포함하면 많은 작업이 절약됩니다. 이는 모든 웹 페이지에 대한 표준 머리글, 바닥글 또는 메뉴 파일을 만들 수 있음을 의미합니다. 그런 다음 헤더를 업데이트해야 할 때 헤더 포함 파일만 업데이트하면 됩니다. 구문include 'filename';또는 require 'filename';
PHP include 및 require 문
<html> <head> <meta charset="utf-8"> <title> php中文网 (php.cn)</title> </head> <body> <?php include 'header.php'; ?> <h1>欢迎来到我的主页!</h1> <p>一些文本。</p> </body> </html>예제 2모든 페이지에서 사용되는 표준 메뉴 파일이 있다고 가정합니다. "menu.php":echo '<a href="/">홈페이지</a><a href="/html " >HTML 튜토리얼</a><a href="/php">PHP 튜토리얼</a>';웹사이트의 모든 페이지는 참조되어야 합니다. 메뉴 파일 . 구체적인 접근 방식은 다음과 같습니다.
<html> <head> <meta charset="utf-8"> <title> php中文网 (php.cn)</title> </head> <body> <div class="leftmenu"> <?php include 'menu.php'; ?> </div> <h1>欢迎来到我的主页!</h1> <p>一些文本。</p> </body> </html>예 3변수를 정의하는 포함 파일("vars.php")이 있다고 가정합니다.
<?php $color='red'; $car='BMW'; ?>이러한 변수는 다음과 같습니다. 호출에 사용됨 파일에서:
<html> <head> <meta charset="utf-8"> <title>php中文网 (php.cn)</title> </head> <body> <h1>欢迎来到我的主页!</h1> <?php include 'vars.php'; echo "I have a $color $car"; // I have a red BMW ?> </body> </html>존재하지 않는 파일 포함include "foo.php";위 코드에는 다음이 포함되어 있습니다. foo.php라는 파일 파일이 존재하지 않으면 실행 후 다음과 같은 경고 메시지가 나타납니다. 경고: include(foo.php): failed to open stream: No such file ordirectory in /var/ www/web/ test.php 온라인 3경고: include(): 포함하기 위해 'foo.php'를 열지 못했습니다(include_path='.:/usr/local/php/lib/php'). /var/www /web/test.php 3행
절대 경로 설정
include 'C: wampwwwfoo.php' ;위에서 절대 경로가 설정되어 include_path 검색을 성공적으로 피했지만, 코드가 다른 사람에게 복사되어 D:wamp 또는 E:www를 사용한다면 어떻게 될까요?
현재 스크립트가 C:wampwwwindex.php인 경우 index.php를
include __DIR__ 으로 변경할 수 있습니다.
이전 연습에서도 상대 경로를 절대 경로로 변경합니다.
once
include와 require는 각각 한 번 함수에 해당합니다.
include_once와 require_once
의 기능에는 차이가 없습니다. 주요 기능은 반복 포함을 방지하는 것입니다.
템플릿 분리
include 또는 require는 다른 코드를 포함하는 데 사용되므로 코드를 다른 파일로 분리할 수도 있습니다
<?php
$name = 'andy';
$age = 18;
?>
<h1><?=$name?>은 <span><?=$age?></span></h1>
<?php
$name = 'andy';
$age = 18;
require "template.html";
return
PHP 파일인 경우 포함된 파일에서 return 문
<?php를 사용할 수도 있습니다. $arr = include "return.php"; ?>
?>
include(), require(), fopen_with_path() 함수를 사용하여 파일을 찾을 때. include_path가 설정되지 않은 경우 이 함수는 파일을 열 때 기본적으로 웹 루트 디렉터리에서 검색합니다. , 이 PHP 함수는 먼저 지정된 include_path 디렉토리에서
을 검색합니다. 1.include_path의 의미
include(), require(), fopen_with_path() 함수를 사용하여 파일을 검색할 때, include_path가 설정되지 않은 경우 이러한 함수는 파일을 열 때 기본적으로 웹 루트 디렉터리에서 검색합니다. include_path , 이 PHP 함수는 먼저 지정된 include_path 디렉터리에서 검색합니다.
창에서 cmd 명령을 실행할 때 일부 cmd 명령을 입력하면 시스템이 검색을 설정합니다. 환경 변수를 사용하여 이러한 명령이 존재하는지 확인하고 존재하는 경우 실행합니다.
2.include_path 설정
첫 번째 방법:
php.ini 파일의 include_path 항목을 수정하세요.
include_path = .:/usr/local/lib/php:./include
두 번째 방법:
ini_set 방법을 사용하세요.
ini_set("include_path", ".:../:./include:../include");
3. 참고
zendframework에는 index.php 설정이 포함됩니다
다음과 같이 코드를 복사하세요:
set_include_path('.' .PATH_SEPARATOR.'../library/'
.PATH_SEPARATOR.'./application/models/'
.PATH_SEPARATOR.'. / application/lib/'
.PATH_SEPARATOR.get_include_path());
PATH_SEPARATOR는 Linux 시스템에서는 ":" 숫자이고 Windows에서는 ";"입니다.
따라서 프로그램을 작성할 때 대신 PATH_SEPARATOR 상수를 사용하는 것이 가장 좋습니다. 그렇지 않으면 시스템이 Linux에서 Win 시스템으로 또는 그 반대로 이식되면 오류가 발생합니다!
get_include_path는 현재 기존 환경 변수와 이전 설정을 가져오며, 이는 새로운 시스템 포함입니다.