首頁  >  文章  >  後端開發  >  PHP中include require include_once require_once 的區別

PHP中include require include_once require_once 的區別

WBOY
WBOY原創
2016-08-08 09:21:24950瀏覽
準備在一個PHP的開源程式上做點二次開發,藉此機會想對PHP進行一下系統的學習。曾經也大概的了解一點PHP,但因為工作中一直沒有用到這門語言,所以慢慢也放下了。走了這麼久的彎路才明白,專案驅動是最好的學習方式。只有當你需要用到語言的時候,去學習它才會有比較好的效果,而且也不容易忘記。 在二次開發之前得先了解一下原先程序的整個結構,在看源碼的過程中發現有大量的引入語句,記得之前就對PHP中的include和require的區別一直很含糊,不能再用這樣的態度對學習,因此特地停下來了解PHP和include和require的聯繫和區別。 首先include和require都是引入指定的檔案。 _once表示只引入一次,即之前已經引入過的不再引入。 例如1.php中有句簡單的打印echo '1' 下面的程式運行的結果:<span><?</span><span>php include </span><span>'1.php'</span><span>;</span><span></span><span>require</span><span></span><span>'1.php'</span><span>;</span><span>include_once </span><span>'1.php'</span><span>;</span><span> require_once </span><span>'1.php'</span><span>;</span>將是

1

php include 'hello.php'; echo 'world';?>

將是

1 1

1

1

1

如果將_once引入的語句放在include和require上面,結果將是111與require的差異

1、載入失敗的處理方式不同

include與require除了在處理引入檔案的方式不同外,最大的區別就是:

include在引入不儲存檔案時產生一個警告且腳本還會繼續執行,

require會導致一個致命性錯誤且腳本停止執行。

php require'hello.php'; echo 'world';?> 如果hello.php不存在,echo ‘world’這句話是可以繼續執行的。 if(FALSE){ include 'file.php';//file.php不会被引入 }if(FALSE){require'file.php';//file.php将会被引入 如果hello.php不存在,echo ‘hello’這句話是不會執行的,到require時就停止了。 2、include()是有条件包含函数,而 require()则是无条件包含函数。if(FALSE){ include 'file.php';//file.php不会被引入 }if(FALSE){require'file.php';//file.php将会被引入 3、文件引用方式include有返回值,而require没有$retVal = include(’somefile.php’);if(!empty($retVal)){ echo “文件包含成功”;}else{ echo “文件包含失败”;}include()执行时需要引用的文件每次都要进行读取和评估,
require()执行时需要引用的文件只处理一次(实际上执行时需要引用的文件内容替换了require()语句) 可以看出若有包含这些指令之一的代码和可能执行多次的代码,则使用require()效率比较高,
若每次执行代码时相读取不同的文件或者有通过一组文件叠代的循环,就使用include(),require通常使用方法,这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。include通常使用方法,这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化另外关于include和require后面是否加括号的问题,理论上来说:include和require后面加不加括号对执行结果没有区别,但是加上括号效率较低,所以后面能不加括号就不加括号。
转自:http://liuzhichao.com/p/1743.html

以上就介绍了PHP中include require include_once require_once 的区别,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:PDO學習筆記下一篇:PDO學習筆記