1.include()與require()的區別(同理可區分include_once()與require_once()) include(),require()語句包含並運行指定檔案。 這兩種結構除了在如何處理失敗之外完全一樣。 include()產生一個警告而require()則導致一個致命錯誤。換句話說,如果想在遇到丟失檔案時停止處理頁面就用 require()。include()就不是這樣,指令碼會繼續運行例1:include()產生一個Warning而require()則導致一個Fatal error。 zhanhailiang@linux-06bq:~> php -r "include('a.php');" Warning: include(a.php): failed to open stream: No such file or directory in Command line code on line 1 Warning: include(): Failed opening 'a.php' for inclusion (include_path='.:/usr/local/services/phplib/src:/usr/local/services/phplib/inc:/usr/local/services/php/lib/php') in Command line code on line 1zhanhailiang@linux-06bq:~> php -r "require('a.php');" Warning: require(a.php): failed to open stream: No such file or directory in Command line code on line 1 Fatal error: require(): Failed opening required 'a.php' (include_path='.:/usr/local/services/phplib/src:/usr/local/services/phplib/inc:/usr/local/services/php/lib/php') in Command line code on line 12.include()與include_once()的區別(同理可區別require()與require_once()) include_once()語句在指令碼執行期間包含並運行指定檔案。此行為和include()語句類似,唯一區別是如果該檔案中的代碼已經被包含了,則不會再次包含。如同此語句名字暗示的那樣,只會包含一次。include_once()應該用於在指令碼執行期間同一個檔案有可能被包含超過一次的情況下,想確保它只被包含一次以避免函數重定義,變數重新賦值等問題。 傳回值和include()相同。如果檔案已被包含,本函數返回TRUE。例1:include()會多次包含指定檔案,而include_once()不會。 zhanhailiang@linux-06bq:~> cat a.php php -r "include('a.php');include('a.php');"11zhanhailiang@linux-06bq:~> php -r "include_once('a.php');include_once('a.php');"1 www.2cto.com例2:include_once()避免函數重定義。 zhanhailiang@linux-06bq:~> cat a.php php -r "include('a.php');include('a.php');"1 Fatal error: Cannot redeclare test() (previously declared in /home/zhanhailiang/a.php:4) in /home/zhanhailiang/a.php on line 4zhanhailiang@linux-06bq:~> php -r "include_once('a.php');include_once('a.php');"1
http://www.bkjia.com/PHPjc/477641.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/477641.htmlTechArticle1.include()與require()的區別(同理可區分include_once()與require_once()) include(),require()語句包含並運行指定檔案。 這兩種結構除了在如何處理失敗之外...