PHP中include和require有什麼區別?

來源:酷知科普網 8.6K

在做網站開發時,對於一些公共的邏輯,比如網站頭部,網站導航選單等,通常都是做一個公共檔案,然後在各個頁面上引入這個公共檔案。
在PHP裡引入檔案可以用include語句,或用require語句,這二者有什麼區別?一起來看下。

操作方法

(01)我們先做一個公共的檔案,檔名叫 ,這個示例檔案很簡單,就是輸出一些文字資訊。

PHP中include和require有什麼區別?

(02)我們接著在一個頁面裡引入這個檔案。

PHP中include和require有什麼區別? 第2張

(03)執行頁面後,可以看到有正確執行了引入檔案的邏輯,輸出了這些文字資訊。

PHP中include和require有什麼區別? 第3張

(04)把程式碼改成用include來引入這個公共檔案。

PHP中include和require有什麼區別? 第4張

(05)再次執行後,可以看到也正確執行了引入檔案的邏輯,輸出了這些文字資訊。

PHP中include和require有什麼區別? 第5張

(06)看似二者沒什麼區別。我們再次把程式碼改一下,引入一個不存在的檔案,然後在引入檔案後,也輸出一些資訊。程式碼如圖

PHP中include和require有什麼區別? 第6張

(07)執行後,我們在頁面看到一個警告資訊(Warning),但引入程式碼後的輸出語句有執行,也就是說雖然用include引入檔案發生了錯誤,但不影響後面程式碼的執行。

PHP中include和require有什麼區別? 第7張

(08)修改程式碼,把include改成用require來引入檔案,

PHP中include和require有什麼區別? 第8張

(09)再看下執行結果,從頁面上看,報錯的是一個嚴重錯誤(Fatal error),而且引入程式碼後的輸出語句並沒有執行,也就是說當用require引入檔案發生了錯誤,會導致後面的程式碼不再執行。這就是require和include引入檔案最大的區別了。

PHP中include和require有什麼區別? 第9張
熱門標籤