「PHP」include()、include_once()、require()、require_once()的用法及区别

(1)为神马要使用include、include_once、require、require_once?

        因为要使用函数自定义库,官方一点来说就是:函数库并不是定义函数的PHP语法,而是编程时的一种设计模式。函数是结构化程序设计的模块,是实现代码重用的核心,为了更好的组织代码,使自定义的函数可以在同一个项目的多个文件中使用,通常将多个自定义的函数组织到同一个文件或多个文件中。这些收集函数定义的文件就是创建的PHP函数库。如果在PHP脚本中想使用这些文件中定义的函数,就需要使用include()、include_once()、require()、require_once()中的一个函数,将函数库文件载入到脚本程序中。

(2)include()、require()的区别

        require()语句的性能与include()类似,都是包括并运行指定文件。不同之处在于,对include()语句来说,在执行文件时每次都要进行文件读取和评估;而对于require()语句来说,文件只处理一次(实际上,文件内容替换了require()语句)。这就意味着如果可能执行多次的代码,则使用require()效率比较高。另一方面,如果每次执行的代码时是读取不同的文件,或者通过一组文件迭代的循环,就使用include()语句。

        require()语句的使用方法如require(“index.php”),这个语句通常放在PHP脚本程序的最前面。PHP程序在执行前,就会先读入require()语句所引入的文件,使它变成PHP脚本的一部分。include()语句的使用方法和require()语句一样如include("index.php”)。而这个语句一般是放在流程控制的处理区段中。PHP脚本文件在读到include()语句时,才将它包含的文件都读进来。这种方式,可以把程序执行时的流程简单化。

        require()和include()语句时语言结构,不是真正的函数,可以在使用的时候不加圆括号而直接加参数,如include “index.php”。

    require 和 include几乎完全一样,除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误。换句话说将导致脚本中止,而include只产生警告(E_WARNING),脚本会继续运行。

(3)include_once()和require_once()

        include_once()和require_once()语句也是在脚本执行期间包括并运行指定文件。此行为和include()语句及require()语句类似,使用方法也一样。唯一不同的是如果该文件中的代码已经被包括了,则不会再次包括。这两个语句应该用于脚本执行期间,同一个文件有可能被包括超过一次的情况下,确保它只被包括一次,以避免函数重定义及变量重新赋值等问题。

猜你喜欢

转载自blog.csdn.net/qq_36631580/article/details/81238664