文件引入
文件的引入
PHP会将多个脚本文件所使用的到的相同的代码,会单独生成(封装)成一个脚本文件,在使用此功能代码的,脚本文件中引用,即为文件的引入。
文件引入
语法:
方式1:
require
require_once
方式二:
include
include_once
根据引用的文件与被引入文件的逻辑上可以将引入分为
前向引入:
在当前脚本中使用另一个脚本中的功能性的功能。
后向引入:
当前脚本中有数据给另一个文件使用。
示例:
当前文件:
03nxn.php文件
03temp.html文件
文件引入的区别
require
特点:
在引入文件的过程中,如果出错,那么直接结束当前脚本的执行。
include
经验法则:
- 一般require引用功能性的代码(此种功能性的代码,在逻辑上引入其后的代码,依靠于被引入文件的代码)例如:数据库的连接,
- 一般require会书写在第一行。
- 一般include用于引入模板性的文件
- include多用于分支结构
- 如果被引入的文件发生错误,对引入文件的影响不大,那么使用include
once的区别:
没有Once的语法,每遇到一个require或include就会引入一次文件。
有once的语法,只保证引入一次。
示例1:
03nxn.php文件
示例2:
引入文件的原理
示例:
引入文件:03demo_require.php文件
被引入文件:03nxn.php
运行结果
说明:
首先03demo_require.php文件,require('03nxn.php')语句,并不会被执行
当03demo_reuiqre.php文件,编译后,执行时,当执行到nxn()语句时,会在内存中还没有nxn()函数,所以报错。
错误就是由引入文件与被引入文件编译不是同步的(先编译引入文件的源代码,在执行引入文件的编译后的代码时,则引入被引入文件,被引入文件才会被编译。)
当执行到require('03nxn.php')语句时,才会引入03nxn.php文件源代码,再对03nxn.php文件中的源代码进行编译。编译之后才执行