亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

PHP包含文件函數include、include_once、require、require_once區別總結

2024-05-04 23:22:39
字體:
來源:轉載
供稿:網友

例如下面的代碼:

復制代碼 代碼如下:

include('hello.php');
echo 'include test final!';//include報錯,但是會繼續執行,顯示:include test final!
require('hello.php');
echo 'require test final!';//require報錯,停止代碼的執行。

一句話總結:
1.include() 產生一個警告
2.require()  則導致一個致命錯誤

換句話說,如果你想在丟失文件時停止處理頁面,那就別猶豫了,用  require()  吧。include()  就不是這樣,腳本會繼續運行。同時也要確認設置了合適的include_path。
就是說再解析程序時即讀取require的文件,而不是解析后,如果不能讀取到被require的文件,就不能進行下一步動作。所以,不被正確包含就會導致程序的文件,用require比較好??赡苄噬弦猜晕⒏唿c。

注意:require() 無論如何都會包含文件,而include() 可以有選擇地包含:

復制代碼 代碼如下:


<?php
 if(FALSE){
   require('x.php');
 }
 if(FALSE){
   include('s.php');
 }
?>


上面的代碼中:x.php  一定會被包含,而  s.php  一定不會被包含。

二種方式提供不同的使用彈性:
require 的使用方法如 require("MyRequireFile.php"); 。這個函式通常放在 PHP 程式的最前面,PHP 程式在執行前,就會先讀入 require 所指定引入的檔案,使它變成 PHP 程式網頁的一部份。
include 使用方法如 include("MyIncludeFile.php"); 。這個函式一般是放在流程控制的處理區段中。PHP 程式網頁在讀到 include 的檔案時,才將它讀進來。這種方式,可以把程式執行時的流程簡單化。


一、使用語法和簡介

1、include()
語法:include(/path/to/filename)
include()語句將在其被調用的位置處包含一個文件。包含一個文件與在該語句所在位置復制制定文件的數據具有相同內容的效果。
使用include()時可以忽略括號。

可以根據條件來執行include()語句。在條件語句中使用include()有個怪現象,它必須包圍在語句塊大括號中,或者用其他語句包圍符括起來。

2、include_once()
語法:include_once(filename)

include_once() 語句在腳本執行期間包含并運行指定文件。此行為和 include() 語句類似,唯一區別是include_once()會先判斷一下這個文件在之前是否已經被包含過,如已經包含,則忽略本次包含。
include_once() 應該用于嵌套包含的情況下,想確保它只被包含一次以避免函數重定義,變量重新賦值等問題。

小結:include_once()函數的作用與include相同,不過它會首先驗證是否已經包含了該文件。如果已經包含,則不再執行include_once。否則,則必須包含該文件。除了這一點與include完全相同。

3、require()
語法:require(filename)
require()在很大程度上與include相同,都是將一個模板文件包含到require調用坐在的位置。
require和include之間有兩點重要的區別。首先,無論require的位置如何,制定文件都將包含到出現require的腳本中。例如,即使require放在計算結果為假的if語句中,依然會包含指定文件。
第二個重要的區別是:require出錯時,腳本將停止運行,而在使用include的情況下,腳本將繼續執行。

4、require_once()
語法:require_once(filename)
require_once() 語句在腳本執行期間包含并運行指定文件。此行為和 require() 語句類似,唯一區別是require_once()會先判斷一下這個文件在之前是否已經被包含過,如已經包含,則忽略本次包含。
require_once() 應該用于嵌套包含的情況下,想確保它只被包含一次以避免函數重定義,變量重新賦值等問題。

小結:隨著網站越來越大,可能會出現重復包含某些文件。這也許不是問題,但又是修改了所包含文件的變量后,卻由于后面再次包含原來的文件而被覆蓋,可能不希望出現這種情況。還可能出現另一個問題,即所包含文件中函數名的沖突。使用require_once就可以解決這些問題。
require_once函數確保文件只包含一次。在遇到require_once后,后面再試圖包含相同的文件時將被忽略。


二、區別總結

1、include()與require()語句區別。
兩者區別:這兩種結構除了在如何處理失敗之外完全一樣。
include() 產生一個警告,腳本會繼續運行。
require() 則導致一個致命錯誤,腳本會停止運行。

換句話說,如果想在遇到丟失文件或遇到錯誤時停止處理頁面就用 require()。如果想在遇到錯誤時繼續處理頁面就用 include()。
注意在 PHP 4.3.5 之前,包含文件中的語法錯誤不會導致程序停止,但從此版本之后會。

2、include_once()、require_once()與include()、require()的區別
include_once()和require_once()一樣,應該用于在腳本執行期間同一個文件有可能被包含超過一次的情況下,想確保它只被包含一次以避免函數重定義,變量重新賦值等問題。這就是include_once()和require_once()與include() 和require()的主要區別。


三、需要注意的問題

1.路徑問題
特別是嵌套包含的時候,一定得注意包含文件的路徑。
比如 A文件包含了B文件,B文件包含了C文件,A,B,C文件都不在同一個文件夾下,這個時候往往很容易出錯誤。
解決方案:可以使用 dirname(__FILE__) 語句,這句的意思是獲得當前腳本的絕對路徑。如:require_once(dirname(__FILE__).'/config.php');

2.效率問題
include_once(),require_once(),與include(),require()比較,效率要低一些,因為他們至少得先判斷一下這個文件是否已包含。這一問題在PHP5版本有很大改進,不過效率還是有差別。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲人成伊人成综合网久久久| 成人动漫网站在线观看| 亚洲精品永久免费精品| 米奇精品一区二区三区在线观看| 国产91九色视频| 26uuu另类亚洲欧美日本一| 亚洲日本中文字幕免费在线不卡| 日韩在线播放av| 久久久视频免费观看| 久久高清视频免费| 一区二区成人精品| 91中文精品字幕在线视频| 性欧美视频videos6一9| 日韩美女在线观看一区| 欧美性猛交xxxx黑人猛交| 97精品久久久| 欧美精品在线播放| 欧美中文字幕视频在线观看| 欧美精品在线免费播放| 在线观看亚洲区| 欧美日韩在线一区| 亚洲国产一区二区三区在线观看| 欧美精品日韩三级| 久久av资源网站| 国产日产久久高清欧美一区| 欧美电影免费播放| 亚洲a∨日韩av高清在线观看| 国产成人精品免高潮在线观看| 狠狠色香婷婷久久亚洲精品| 亚洲韩国日本中文字幕| 亚洲国产精品人久久电影| 久久久久久国产精品三级玉女聊斋| 久久久久久有精品国产| 久久久噜久噜久久综合| 精品久久久久久久大神国产| 91精品啪在线观看麻豆免费| www.日韩.com| 尤物tv国产一区| 久久伊人精品一区二区三区| 欧美性高潮床叫视频| 高潮白浆女日韩av免费看| 亚洲欧美在线一区| 国产精品日韩欧美大师| 91精品国产九九九久久久亚洲| 成人福利在线观看| 久久国产精品视频| 国产日韩欧美日韩大片| 亚洲第一福利网站| 亚洲精品天天看| 中文字幕亚洲一区二区三区| 亚洲一区中文字幕| 日韩精品福利网站| 国产z一区二区三区| 久久精品国产免费观看| 成人免费看吃奶视频网站| 日韩视频在线观看免费| 亚洲图片欧美午夜| 亚洲国产日韩欧美综合久久| 日韩精品极品视频免费观看| 亚洲精品福利在线| 国产精品一区二区3区| 欧美成年人视频网站欧美| 国产精自产拍久久久久久| 国产一区二区视频在线观看| 中文字幕不卡在线视频极品| 日本久久久久久久| 久久久久国产精品免费网站| 综合网日日天干夜夜久久| 中国日韩欧美久久久久久久久| 色综合久久精品亚洲国产| 九九热精品视频| 亚洲欧美日韩高清| 国产精品亚洲美女av网站| 一本大道香蕉久在线播放29| 国产精品日日做人人爱| 国产亚洲aⅴaaaaaa毛片| 欧美精品在线极品| 久久久欧美一区二区| 亚洲欧美另类自拍| 国产精品自产拍在线观看| 亚洲天堂网在线观看| 亚洲精品资源美女情侣酒店| 欧美中文字幕精品| 裸体女人亚洲精品一区| 亚洲国产另类久久精品| 久久青草精品视频免费观看| 中文字幕一区二区三区电影| 91深夜福利视频| 国产精品最新在线观看| 91中文精品字幕在线视频| 亚洲欧洲视频在线| 中文字幕欧美专区| 国产一区二区在线免费| 在线亚洲国产精品网| 欧美性极品少妇精品网站| 91精品啪aⅴ在线观看国产| 日韩中文在线视频| 性色av一区二区三区红粉影视| 国产日韩在线视频| 国产精品最新在线观看| 亚洲最新av在线网站| 国模gogo一区二区大胆私拍| 2020国产精品视频| 欧美专区在线播放| 国产一区欧美二区三区| 亚洲free性xxxx护士白浆| 色偷偷亚洲男人天堂| 国内免费久久久久久久久久久| 97国产一区二区精品久久呦| 美女精品视频一区| 国产精品久久久久久久久久久久久| 国产精品情侣自拍| 亚洲色图av在线| 欧美一级淫片aaaaaaa视频| 亚洲第一区在线| 亚洲国产成人精品久久久国产成人一区| 亚洲国产美女精品久久久久∴| 久久精品亚洲精品| 在线观看国产精品91| 精品久久久久久久久久| 97热在线精品视频在线观看| 国产成人精品久久亚洲高清不卡| 中文字幕亚洲无线码在线一区| 亚洲女人初尝黑人巨大| 日本欧美中文字幕| 日韩一区二区久久久| 亚洲一区免费网站| 国产aaa精品| 成人夜晚看av| 日韩在线视频网站| 久久精品成人欧美大片| 欧美夫妻性生活xx| 丝袜亚洲另类欧美重口| 上原亚衣av一区二区三区| 欧美与黑人午夜性猛交久久久| 精品无人区乱码1区2区3区在线| 久久免费在线观看| 欧美一区二区三区图| 国产欧美日韩综合精品| 欧美xxxx做受欧美.88| 日韩亚洲一区二区| 精品久久香蕉国产线看观看gif| 美女啪啪无遮挡免费久久网站| 亚洲精品日韩欧美| 国产在线98福利播放视频| 欧美色道久久88综合亚洲精品| 亚洲男女自偷自拍图片另类| 在线视频免费一区二区| 亚洲成年网站在线观看| 一区二区三区 在线观看视| 一个色综合导航| 51色欧美片视频在线观看| 亚洲人成网站777色婷婷| 91久久久久久久久久久久久| 日韩在线免费av| 日韩欧美精品在线观看| 日本乱人伦a精品| 国产一区二区三区在线视频| 91人人爽人人爽人人精88v| 亚洲电影免费在线观看| 中文字幕欧美视频在线| 97色在线视频观看| 秋霞成人午夜鲁丝一区二区三区| 欧美精品制服第一页|