在我们开发一个网站的时候,必须要考虑到代码重用的问题, 不管你的网站规模的大小,也不管你维护和更新的次数,这一问题都是非常麻烦的。我们今天就向大家介绍这方面的解决办法,那就是PHP函数include()的具体应用。
#t#在PHP中,至少有几个函数可以帮助你实现代码重用的目的,所使用的函数取决于你所重用的代码,主要的函数有:
* include() and include_once()
* require() and require_once()
PHP函数include()包含并对给定的文件进行计算,例如:
include('/home/me/myfile');
在include文件中的任何代码都在PHP函数include()出现的代码范围内执行,你可以通过联合使用include()和fopen()在自己的服务器上包含静态文件,在另一台服务器上包含目标文件。
include_once()的功能与include()相同,二者之间的区别在于它会检查一个文件中的代码是否已经包含在现有的脚本中,如果代码已经存在,则不会再次包含它。
require()函数用给定文件的内容取代它本身,这一代替过程发生在PHP引擎编译代码期间,而不是在执行期间进行,它不象PHP函数include()那样会首先进行计算。require()函数更多地用在静态元素中,而include()更多地用于动态元素中。与include_once()类似的是,require_once()将首先检查是否已经插入给定的代码,如果代码已经存在,就不再插入了。
为也了解其内容,在版权信息、静态文字和其他不包含变量的元素或者依赖其他正在执行的脚本的元素中我更趋向于使用require函数。例如:
- <HTML>
- <HEAD><TITLE>Something</TITLE></HEAD>
- <BODY>
- [a lot of content]
- <?
- // insert copyright
- require('/home/me/mycopyright');
- ?>
- </BODY>
- </HTML>
另一方面,我经常在文件的开始使用PHP函数include()来控制许多的函数:
- <?
- //得到函数库
- include('/home/me/myfunctions');
- // do PHP things with my functions ?>
- <HTML>
- <HEAD><TITLE>Something</TITLE></HEAD>
- <BODY>
- [a lot of content]
- </BODY>
- </HTML>
下一个问题就该是“include和require文件在哪里?”,对这个问题简单的回答是,“系统中的任意地方。”如果你的代码中包含有带有用户名和口令的数据库连接,你肯定不会将它们都放在文档根目录中向所有的人都开放。
included或required文件可以在系统上的任何地方,只要PHP运行的系统上的用户可以访问这些文件即可,你可以使这些文件具有任何后缀,或者不使用后缀。
使用PHP函数include()和require()对在网站中的元素进行具体化是一种普遍的现象,并在需要对网站升级时,给你带来很大的方便。