一月 3, 2011

include/require 和 include_once/require_once

Posted in Uncategorized 於 1:02 上午 由 midashuang

include這個語法一般是放在流程控制的處理區段中,php的網頁程式讀到這個include的檔案時,才會將他讀進來,採用這種方式可將流程簡化。

require這個語法通常放在php網頁程式的最前端,在網頁執行前就會先讀取require所指定載入的檔案,將他變成網頁程式的一部分,所以可將常用的函數寫成一個函式庫檔案,然後採用require將他引入網頁程式當中。

include / require 的差異

  • include 在找不到檔案時只會觸發 Warning ,並不對程式有任何影響。include( ) 適合用來載入動態的程式碼(程式內容會依其他程式碼而變動)。
  • require 在找不到檔案時會觸發 Fatal Error 進而使程式執行停止。require( ) 適合用來引入靜態的內容(如版權宣告)。

 

include_once 和 require_once用法和include及require一樣,主要也是載入其它的檔案進來,差別在於會先檢查要載入的檔案是不是已經在該程式中的其他地方被載入過了;如果有的話,就不會再次重複載入該檔案。比如說在載入的檔案中有我們自行宣告的函數定義,如果在同一個程式重複載入這個檔案,在第二次載入的時候就會發生錯誤訊息,因為php不允許相同名稱的函數被重複宣告。

對於 include_once() 的使用時機,常見的有下列幾點 (與 require_once() 相同):

  1. PHP 程式執行期間,會多次引入相同的函數。
  2. 確保不會因為重覆引入相同的檔案,而產生函數重覆定義 (function redefinitons) 的錯誤。
  3. 確保不會因為重覆引入相同的檔案,而產生變數重覆給值 (value reassignments) 的錯誤。

注意事項
要使用 include_once() 必須安裝 PHP 4.0.1pl2 以上的版本。
若需經過條件判斷之後才能決定是否載入該檔案,則只能用include;若不需判斷的話,include與require都可以使用。
在使用include與require載入某檔案時,php是以html格式讀入,若載入的檔案當中有php script的話,需將其包在程式中段落中。

廣告

2 則迴響 »

  1. CrazyLion said,

    小強阿 你漏掉要看 include & require 的差異在哪邊喔~~~

    這邊還是請去看一下補上去~~~


發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

%d 位部落客按了讚: