一、定義
require,require_once,include,include_once都屬於PHP的關鍵字,也就是說它們實際都是PHP的語句,而不是函數,類似於print,echo一樣,也是PHP種的輸出語句,而不是函數。但在更多的時候,大家都常稱作函數。
二、用法
require 'test.php',require_once 'test.php',或者require('test.php'),require_once('test.php')這樣的寫法都是可以的,include也是如此。它們是用於在一個文件中需要引入另一個文件時所用。它們雖然可以帶括號,但並非函數,我更喜歡用引號。
三、require和require_once的區別
require()在當前文件中引用時,可能會出現類或方法的多次引用或重復。而require_once()接收一個地址為參數,在當前文件中引用時,會先檢查是否已經引用或出現過該引用文件中的類或方法,確保類或方法沒被引用過。
四,include和include_once的區別
include與require,include_once和require_once作用一樣。
五,include(include_once)和require(require_once)的區別
include和include_once在引用一個文件時,如果出現錯誤,會發出警告,並停止引用的文件的運行,然後繼續運行當前文件,整體代碼運行不會停止。
require和require_once在引用一個文件時,如果出現錯誤,會立即發出警告,然後停止整體代碼運行。因此require和require_once想對會更安全。
六,優缺點
require_once需要運行時間更長點,所以效率也就相對更低點。如果考慮時間優先的話,require是更好的選擇,但是在更多的時候,時間和效率是一種平衡關系。
七,用處
require和require_once一般用於包含類文件。include和include_once一般用於包含模板文件。
(有不確切的地方,歡迎指出)