【PHP】文件包含-include&require

文件包含

文件包含:在一个PHP脚本中,去将另外一个文件(PHP)包含进来,去合作完成一件事情。

意义:

1.要么使用被包含文件中的内容,实现代码的共享(重用):向上包含(索要)

  • 向上包含:在当前脚本要用某个代码之前包含别的文件

2.要么自己有东西可以给别的文件使用,实现代码的共享(重用):向下包含(给予)

  • 向下包含:在自己有某个东西的时候,需要别的脚本来显示(自己代码写完之后包含其他文件)

最大的作用:分工协作,每个脚本做的事情不一样,因此可以使用协作方式,让多个脚本共同完成一件事情。

四种形式

在PHP中文件的包含有四种形式(两种大形式):

  • include:包含文件
  • include_once:系统会自动判断文件包含过程中,是否已经包含过。(是否被重复包含,因为一个文件最多被包含一次)
  • require:作用和include相同
  • require_once:作用和include_once相同

基本语法

include '文件名字'
include('文件名字') 

文件加载原理

1.在文件加载(include或者require)的时候,系统会自动的将被包含文件中的代码相当于嵌入到当前文件中

2.加载位置:在哪加载,对应的文件中的代码嵌入的位置就是对应的include位置

3.在PHP中被包含的文件是单独进行编译的

PHP文件在编译的过程中如果出现了语法错误,那么会失败(不会执行);但是如果被包含文件有错误的时候,系统会在执行到包含include这条语句的时候才会报错。


include和require的区别

include和include_once的区别:

  • include系统会碰到一次,执行一次;如果对同一个文件进行多次加载,那么系统会执行多次
  • include_once:系统碰到多次,也只会执行一次。

使用include

image-20230731153017510


使用include_once

image-20230731153033713

require和include的区别:本质都是包含文件,唯一的区别在于包含不到文件的时候,报错的形式不一样

  • include的错误级别比较轻:不会阻止代码执行
  • require要求较高:如果包含出错代码不再执行(require后面的代码)

使用include

image-20230731153122208

使用require

image-20230731153131376


文件的加载路径

文件在加载的时候需要指定文件路径才能保证PHP正确的找到对应的文件。

文件的加载路径包含两大类:

  • 绝对路径、:从磁盘的根目录开始(本地绝对路径)
    • Windows:盘符C:/路径/PHP文件
    • Linux:/路径/PHP文件
    • 从网站根目录开始(网络绝对路径)
    • /:相对于网站主机名字对应的路径
  • 相对路径:从当前文件所在目录开始的路径
    • .:当前目录
    • ..:上级目录

绝对路径和相对路径的加载区别

1.绝对路径相对效率偏低,但是相对安全(路径不会出问题)

2.相对路径相对效率高些,但是容易出错(相对路径会发生改变)


文件嵌套包含

文件嵌套包含:一个文件包含另外一个文件,同时被包含的文件又包含了另外一个文件。

嵌套包含的时候就很容易出现相对路径出错的问题:相对路径会因为文件的包含而改变(.和…的含义会变)

image-20230731171112901

猜你喜欢

转载自blog.csdn.net/chuxinchangcun/article/details/132450861