require 的使用方法如 require("MyRequireFile.php"); ,這個函式通常放在 PHP 程式的最前面,PHP 程式在執行前,就會先讀入 require 所指定引入的檔案,使它變成 PHP 程式網頁的一部份,常用的函式,亦可以這個方法將它引入網頁中,
include 使用方法如 include("MyIncludeFile.php"); ,這個函式一般是放在流程控制的處理部分中,PHP 程式網頁在讀到 include 的檔案時,才將它讀進來,這種方式,可以把程式執行時的流程簡單化,
他們兩個的用途是完全一樣的,不一定非得哪個放在最前面哪個放在中間,他們最根本的區別在于錯誤處理的方式不一樣,
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的檔案時,才將它讀進來,這種方式可以把程式執行時的流程簡單化,
原文:https://www.cnblogs.com/gaobint/p/6397486.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/98249.html
標籤:PHP
上一篇:thinkphp6安裝報錯,composer install tp6 報錯 Parse error: syntax error
