包含檔案
如果你目前著手的Web網站開發專案規模較大,那你對程式碼重用必定深有體會,比方說,不管是HTML還是PHP程式碼區塊,只要專案夠大,例如有1000個Web頁,你即便是一年只修改一次包含版權資訊的頁腳也會讓你痛不欲生。
而PHP可以透過一些函數幫助你重複使用程式碼,你要具體用到的函數依賴你打算重複使用的內容。
主要的函數是:
* include() 和include_once()
* require() 和require_once()
include()函數包含給定的文件,例如:
include('/home/me/myfile');
包含文件中的任何程式碼都會在include() 所在的程式碼頁的變數範圍內執行。你可以包含伺服器上的靜態文件或包含在其他伺服器上的目標文件,方法是組合使用include()和fopen()。
include_once()函數和include()函數功能類似,只是函數會檢查被包含檔案內的程式碼是否已經被目前的腳本所包含過。如果程式碼已經被腳本所包含,則該函數就不再包含對應的檔案了。
require()函數以給定檔案的內容取代自身。這個替換過程發生在PHP引擎編譯你的程式碼而不是執行程式碼階段,這可和include()不一樣,後者首先被計算再加到文擋中。 require()函數多用於靜態元素,而include()函數主要用於動態元素。和include_once()類似,require_once()函數會檢查給定程式碼是否早已經插入到了文擋內,如果這樣,給定程式碼就不會再次插入文件。
我建議你最好對諸如版權、靜態文本和其他不含變量的元素這類信息採用require函數,那些依賴其他腳本來實現自己內容的元素也最好採用require函數,例如: