background image

PHP 面 试 题 :require 与 require_once 与 include 以 及

include_once 的区别

本文主要是对 require 与 require_once 与 include 以及 include_once 的区别进行了详细的分析
介绍。
PHP 具有快速、可靠、跨平台应用、源代码开放等特点,使得 PHP 成为最受欢迎的服务器
端 Script 语言之一。我根据自己在工作中体会到的,向大家介绍 PHP 使用的心得,希望对

 

大家有所帮助。

利用 PHP 的 Include files

 

维护你的网站

不管你所开发的网站的规模是大是小,你都应该要认识到重复使用程序代码的重要性,

 

不论你重复使用的是 PHP 

 

程序或者是 HTML 原始码。举个例子来说,网站页尾的版权宣

告至少每年都得修改一次,如果你的网站有许多个页面,该怎么办呢?动手一个一个修

 

改这些页面肯定是一件头痛的事情。通过 PHP 我们可以用几个不同的方式来重复使用程

 

序代码。要使用哪些函数端视你要重复使用的是怎样的内容而定。

 

这些主要的函数包括:

* include() 

 

与 include_once() 

* require() 

 

与 require_once() 

1.include() 

 

函数会将指定的档案读入并且执行里面的程序。

例如:include('/home/me/myfile'); 
被导入的档案中的程序代码都会被执行,而且这些程序在执行的时候会拥有和源文件中

 

呼叫到 include() 函数的位置相同的变量范围(variable scope)。你可以导入同一个服务器

 

中的静态档案,甚至可以通过合并使用 include()   

与 fopen() 函数来导入其它服务器上面的

档案。
2.include_once()

 

函数的作用和 include() 

 

是几乎相同的

 

唯一的差别在于 include_once() 函数会先检查要导入的档案是不是已经在该程序中的其它
地方被导入过了,如果有的话就不会再次重复导入该档案(这项功能有时候是很重要的,
比方说要导入的档案里面宣告了一些你自行定义好的函数,那么如果在同一个程序重复

 

导入这个档案,在第二次导入的时候便会发生错误讯息,因为 PHP 不允许相同名称的函
数被重复宣告第二次)。
3.require()

 

函数会将目标档案的内容读入,并且把自己本身代换成这些读入的内容。

 

这个读入并且代换的动作是在 PHP 引擎编译你的程序代码的时候发生的,而不是发生在 
PHP 引擎开始执行编译好的程序代码的时候(PHP 3.0 引擎的工作方式是编译一行执行一

 

行,但是到了 PHP 4.0 就有所改变了,PHP 4.0 是先把整个程序代码全部编译完成后,再