PHP require()和include()函数

来源:互联网 发布:淘宝pc端源代码 编辑:程序博客网 时间:2024/05/18 02:59

PHP require()和include()函数


PHP提供了两个非常简单却很有用的语句,它们允许重新使用任何类型的代码。使用一条require()或include()语句,可以将一个文件载入到PHP脚本中。通常,这个文件可以包含任何希望在一个脚本中输入的内容,其中包括PHP语句、文本、HTML标记、PHP函数或PHP类。这些语句的工作方式类似于大多数Web服务器提供的服务器端包含方式以及C语言或C++中的#include语句。require()和include()几乎是相同的。二者唯一的区别在于函数失败后,require()函数将给出一个致命的错误。而include()只是给出一个警告。

require()和include()也有两个变体函数,分别是require_once()和include_once()。正如你可能猜到的,这两个函数的作用是确保一个包含(included)的文件只能被引入一次。当使用require()和include()来引入函数库时,它们才非常有用。使用这两个函数可以防止错误的引入同样的函数库两次,从而出现重复定义的错误。如果关心编码实践,可以考虑使用require()和include(),因为它们的运行速度较快。

 文件扩展名和require()函数

如下所示的代码保存于reusable.php文件中:

<?php    echo'Here is a very simple PHP statement.<br/>';?>

如下所示的代码保存于main.php文件中:

<?php    echo'This is the main file.<br/>';    require('reusable.php');    echo'The script will end now.<br/>';?>

如果载入reusable.php,当浏览器中显示出”Here is a very simple PHPstatement”时,当载入main.php文件时,它会像如下所示的代码那样执行:

<?php    echo"This is the main file.<br/>";    echo"Here is a very simple PHP statement.<br/>";    echo"The script will end now.<br/>";?>

当使用require()语句时,必须注意处理文件扩展名和PHP标记的不同方式。PHP并不会查看所需文件的扩展名。这就意味着,只要不想直接调用这个文件,就可以任意命名该文件。当使用require()语句载入文件时,它会作为PHP文件的一部分被执行。

通常,如果PHP语句放在一个HTML文件(例如,名为page.html的文件)中时,它们是不会被处理的。PHP通常用来解析扩展名被定义成如.php的文件。(在Web服务器配置文件中可能不是这样)但是,如果通过require()语句载入这个page.html,文件内的任何PHP命令都会被处理。因此,可以使用任何扩展名来命名包含文件,但要尽量遵循一个约定,例如将扩展名命名为.inc或.php。需要注意的一个问题是,如果扩展名为.inc或一些其他的非标准扩展名的文件保存在Web文档树中,而且用户可以在浏览器中直接载入它们,用户将可以以普通文本的形式查看源代码,包括任何密码。因此,将被包含文件保存在文档树之外,或使用标准的文件扩展名是非常重要的。

我们将文件中的PHP代码放到PHP标记之间。如果希望一个所需文件中的PHP代码能够被当成PHP代码进行处理,就必须这样做。如果不使用PHP标记,代码将会被视为文本或者HTML脚本,因此也就不会被执行。

原创粉丝点击