php include与 include_once,require与 require_once

* include() 与 include_once() 
* require() 与 require_once() 

1.include() 函数会将指定的档案读入而且执行里面的程序。 
例如:include('/home/me/myfile'); 
被导入的档案中的程序代码都会被执行,并且这些程序在执行的时候会拥有和源文件中呼叫到 include() 函数的位置相同的变量范围(variable scope)。你能够导入同一个服务器中的静态档案,甚至能够经过合并使用 include() 与 fopen() 函数来导入其它服务器上面的档案。php

2.include_once()函数的做用和 include() 是几乎相同的 
惟一的差异在于 include_once() 函数会先检查要导入的档案是否是已经在该程序中的其它地方被导入过了,若是有的话就不会再次重复导入该档案(这项功能有时候是很重要的,比方说要导入的档案里面宣告了一些你自行定义好的函数,那么若是在同一个程序重复导入这个档案,在第二次导入的时候便会发生错误讯息,由于 PHP 不容许相同名称的函数被重复宣告第二次)。服务器

3.require()函数会将目标档案的内容读入,而且把本身自己代换成这些读入的内容。 
这个读入而且代换的动做是在 PHP 引擎编译你的程序代码的时候发生的,而不是发生在 PHP 引擎开始执行编译好的程序代码的时候(PHP 3.0 引擎的工做方式是编译一行执行一行,可是到了 PHP 4.0 就有所改变了,PHP 4.0 是先把整个程序代码所有编译完成后,再将这些编译好的程序代码一次执行完毕,在编译的过程当中不会执行任何程序代码)。require() 一般来导入静态的内容,而 include() 则适合用来导入动态的程序代码。函数

4.如同 include_once()函数,require_once() 函数会先检查目标档案的内容是否是在以前就已经导入过了,若是是的话,便不会再次重复导入一样的内容。 
我我的习惯使用 require() 函数来导入版权宣告(copyrights),静态文字或其它自己不含有变量,或者自己须要倚赖其它执行过的程序才能正确执行的程序代码ui

php中include和require有什么区别
日常是没区别的.
当要加载的文件不存在时候, include会给一个warning警告, 而后继续运行. 而require则会给一个fatal error, 直接结束脚本spa

require()所包含的文件中不能包含控制结构,并且不能使用return这样的语句。在require()所包含的文件中使用return语句会产生处理错误。 orm

不象include()语句,require()语句会无条件地读取它所包含的文件的内容,而无论这些语句是否执行。因此若是你想按照不一样的条件包含不一样的文件,就必须使用include()语句。固然,若是require()所在位置的语句不被执行,require()所包含的文件中的语句也不会被执行。 it

相关文章
相关标签/搜索