include與require的區別

1、對於錯誤的處理不同。
  include遇到錯誤時(引用的文件不存在),PHP只是報錯,但程序會繼續運行下去。
  require遇到錯誤時,直接報錯並停止運行程序。
2、程序的處理不同。
  require相當於預處理,即它是在程序運行之前就被執行的。所以它是不可以用在控制語句中的,如if中。如果不好理解看完下面的include,對比一下就清楚了。
include相當於函數,它是在程序運行時執行的。所以它可以用在控制語句中。比如下面的代碼:
if(1 > 0){
  include 'config.php';
}else{
  include 'setting.php';
}

這段代碼運行的時候,config.php這個文件會被引用。而setting.php不會。
類似的代碼:
if(1 > 0){
  require 'config.php';
}else{
  require 'setting.php';
}

上面這部分代碼,config.php及setting.php都會被引用。因爲在沒有運行到if這個控制語句前,兩個require語句都運行了。

3.如果存在一個文件多次加載的情況,include和require函數會加載多次,而 include_once和require_once函數只會加載一次



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章