require() 和 include()的區別

require() 和 include() 幾乎完全一樣,除了處理失敗的方式不同之外。include() 產生一個Warning而 require() 則導致一個 Fatal Error。換句話說,如果想在丟失文件時停止處理頁面,那就別猶豫了,用 require() 吧。include() 就不是這樣,腳本會繼續運行。同時也要確認設置了合適的include_path


注意: 

1、在 PHP 4.0.2 之前適用以下規則:require() 總是會嘗試讀取目標文件,即使它所在的行根本就不會執行。條件語句不會影響 require()。不過如果 require() 所在的行沒有執行,則目標文件中的代碼也不會執行。同樣,循環結構也不影響 require() 的行爲。儘管目標文件中包含的代碼仍然是循環的主體,但 require() 本身只會運行一次。

2、Windows 版本的 PHP 在 4.3.0 版之前require不支持通過此函數訪問遠程文件,即使已經啓用 allow_url_fopen.

3、因爲require、include都是一個語言構造器而不是一個函數,不能被 可變函數 調用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章