PHP內的包含語句(include(),require(),include_once(),require_once())
背景:繼續總結PHP內的函數。
在一般的程序中,我們經常重復用到一些代碼,但是如果只是簡單的進行代碼復制,則會增加代碼的冗余度,不便於程序的運行。因此,我們可以把重復性的代碼分離出來,以外部文件的方式存儲,在運用的時候進行引入。
引用外部文件可以減少代碼的重用性,是PHP編程的重要技巧。而PHP為我們提供了4個非常簡單的包含語句。它們允許重新使用任何類型的代碼。使用任意一個豫劇均可將一個文件載入到PHP中。
一。include()語句
使用include()語句包含外部文件時,只有代碼執行到該語句時才將外部文件包含進來,當所包含的外部文件發生錯誤時,系統只給出一個警告,而整個PHP文件則會繼續向下執行。語法如下:
void include(string filename);
參數filename是指定的完整路徑文件名。
二。require()語句
require()語句與include()語句類似,都是實現兌外部文件的調用。語法如下:
void require(string filename);
註:當使用require()語句載入文件時,它會作為PHP文件的一部分被執行,例如,通過require()語句載入一個html網頁文件,那麽文件內的任何PHP命令都會被處理,但是,如將PHP腳本單純的放到HTML網頁中,它是不會被處理的。
三。include_once()語句
在使用include_once()函數時,應該明確它與Include()函數的區別,應用include_once()函數多次調用相同的文件時,程序只會調用一次。include_once()函數是include()函數的擴展,它的作用和include()函數幾乎是相同的,唯一的區別在於include_once()函數會在導入文件前檢測該文件是否在該頁面的其他部分被導入過,如果有的話就不會重復導入該文件。如果在引用一次的情況下,再次引用,會導致第二次的導入發生錯誤。語法如下:
void include_once(string filename);
註:如何判斷include()與include_once()的應用情況?
應該根據不同的程序而定,但是普遍建議使用include_once()語句,因為應用include_once()語句不會出現因重復包含了兩個相同的文件二發生錯誤。
四。require_once()語句
require_once()語句是require()語句的擴展。功能與require()類似.特性與include_once()相似。都是只加載一次,如果加載重復,會進行報錯,但是兩者也有寫區別,具體區別會在結尾舉出。
語法如下:
void require_once(string filsename);
五。include()語句和require()語句的區別
兩者的具體區別如下:
1.在使用require()語句調用文件時,如果沒有找到文件,require()語句會輸出錯誤信息,並且立即終止腳本的處理,而include()語句在沒有找到文件時回輸出警告,但是確不會終止腳本的處理。
2.使用require()語句調用文件時,只要程序一執行,會立即調用外部文件;而通過Include()語句調用外部文件時,只有程序執行到該語句時,才會調用外部文件。
六。include_once()和require_once()的區別
兩者的用途都是確保一個被包含文件只能被包含一次,使用這兩個語句可以防止意外的多次引入文件,但兩者的區別是:include_once()語句在腳本執行期間調用外部文件發生錯誤時產生一個警告,而require_once()語句則導致一個致命錯誤。
PHP內的包含語句(include(),require(),include_once(),require_once())