PHP require和include的區別

2022-05-01 08:27:09 字數 1156 閱讀 7571

require乙個檔案存在錯誤的話,那麼程式就會中斷執行了,並顯示致命錯誤 

include乙個檔案存在錯誤的話,那麼程式不會中端,而是繼續執行,並顯示乙個警告錯誤。 

以下為補充:

1. include有返回值,而require沒有。 

2. include()包括並執行指定檔案 在處理失敗時include() 產生乙個警告,被匯入的程式**都會被執行,而且這些程式在執行的時候會擁有和原始檔中呼叫到include()語句的位置相同的變數範圍。你可以匯入同乙個伺服器中的靜態頁面。 

3. include_once()的作用和include()是幾乎相同的 

唯一的差別在於include_once()會先檢查要匯入的檔案是不是已經在該程式中的其它地方被匯入過了,如果有的話就不會再次重複匯入(這項功能有時候是很重要的,比方說要匯入的裡面宣告了一些你自行定義好的函式,那麼如果在同乙個程式重複匯入這個檔案,在第二次匯入的時候便會發生錯誤訊息,因為php不允許相同名稱的函式被重複宣告第二次)。 

4. require()會將目標檔案的內容讀入,並且把自己本身代換成這些讀入的內容 在處理失敗時require() 則導致乙個致命錯。 

這個讀入並且代換的動作是在php引擎編譯你的程式**的時候發生的,而不是發生在php引擎開始執行編譯好的程式**的時候(php 3.0引擎的工作方式是編譯一行執行一行,但是到了php 4.0以後就有所改變了,php 4.0是先把整個程式**全部編譯完成後,再將這些編譯好的程式**一次執行完畢,在編譯的過程中不會執行任何程式**)。require()通常來匯入靜態的內容,而include()則適合用匯入動態的程式**。 

5. 如同include_once(),require_once()會先檢查目標檔案的內容是不是在之前就已經匯入過了,如果是的話,便不會再次重複匯入同樣的內容。 

5. require是無條件包含也就是如果乙個流程裡加入require,無論條件成立與否都會先執行require。 

7. require通常放在php程式的最前面,php程式在執行前,就會先讀入require所指定引入的檔案,使它變成php程式網頁的一部份。常用的函式,亦可以這個方法將它引入網頁中。 

8. include一般是放在流程控制的處理部分中php程式網頁在讀到include的檔案時,才將它讀進來。這種方式可以把程式執行時的流程簡單化。 

PHP require和include的區別不同

在php中,include和require的作用比較容易混淆。下面我以乙個經典例子來深刻說明它們的區別。當我們經常訪問乙個資料庫時,可以把連庫語句寫成乙個檔案 con db.php dbh mysql connect localhost mysql select db admreqs 在實際應用時,...

JSP中動態include和靜態include區別

靜態 include 用include 偽碼實現 不會檢查所含檔案的變化 適用於包含靜態頁面 include file included.htm 先將檔案的 被原封不動地加入到了主頁面從而合成乙個檔案,然後再進行翻譯 動態 include 用jsp include 動作實現 它總是會檢查所含檔案中的...

php require語句的使用方法詳解

require 和 include 幾乎完全一樣,除了處理失敗的方式不同之外。require 在出錯時產生 e compile error 級別的錯誤。換句話說將導致指令碼中止而 include 只產生警告 e warning 指令碼會繼續執行。語法 void require string file...