成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

PHP中include()和require()的區(qū)別

Hanks10100 / 2494人閱讀

摘要:是否有條件引用在變成中,與的功能相同,但在用法上卻有一些不同,是有條件包含函數(shù),而則是無(wú)條件包含函數(shù)。

1.引用文件方式

對(duì) include()來(lái)說(shuō),在include()執(zhí)行時(shí)文件每次都要進(jìn)行讀取和評(píng)估;而對(duì)于require()來(lái)說(shuō),文件只處理一次(實(shí)際上,文件內(nèi)容替換 了require()語(yǔ)句。這就意味著如果有包含這些指令之一的代碼和可能執(zhí)行多次的代碼,則使用require()效率比較高。另一方面,如果每次執(zhí)行代碼時(shí)讀取不同的文件,或者有通過(guò)一組文件疊代的循環(huán),就使用include(),因?yàn)榭梢越o想要包括的文件名設(shè)置一個(gè)變量。

2.是否有條件引用

在PHP變成中,include()與require()的功能相同,但在用法上卻有一些不同,include()是有條件包含函數(shù),而require()則是無(wú)條件包含函數(shù)。例如在下面的一個(gè)例子中,如果變量$somgthing為真,則將包含文件somefile:


if($something){include("somefile");}

但不管$something取何值,下面的代碼將把文件somefile包含進(jìn)文件里:

if($something){require("somefile");}

下面的這個(gè)有趣的例子充分說(shuō)明了這兩個(gè)函數(shù)之間的不同。

$i = 1; while ($i < 3) {require("somefile.$i"); $i++;}

在這段代碼中,每一次循環(huán)的時(shí)候,程序都將把同一個(gè)文件包含進(jìn)去。很顯然這不是程序員的初衷,從代碼中我們可以看出這段代碼希望在每次循環(huán)時(shí),將不同的文件包含進(jìn)來(lái)。如果要完成這個(gè)功能,必須求助函數(shù)include():

1 $i = 1; 2 while ($i < 3) { 3 include("somefile.$i"); 4 $i++; 5 }
3.報(bào)錯(cuò)

用例子來(lái)說(shuō)話,寫兩個(gè)php文件,名字為test1.php 和test2.php,注意相同的目錄中,不要存在一個(gè)名字是test999.php的文件。

test.php

  test2.php 

瀏覽第一個(gè)文件,因?yàn)闆](méi)有找到test999.php文件,我們看到了報(bào)錯(cuò)信息,同時(shí),報(bào)錯(cuò)信息的下邊顯示了abc,你看到的可能是類似下邊的情況:

Warning: include(test1aaa.php) [function.include]: failed to open stream: No such file or directory in D:WebSite	est.php on line 2

Warning: include() [function.include]: Failed opening ‘test1aaa.php’ for inclusion (include_path=’.;C:php5pear’) in D:WebSite	est.php on line 2
abc

瀏覽第二個(gè)文件,因?yàn)闆](méi)有找到test999.php文件,我們看到了報(bào)錯(cuò)信息,但是,報(bào)錯(cuò)信息的下邊沒(méi)有顯示abc,你看到的可能是類似下邊的情況:

Warning: require(test1aaa.php) [function.require]: failed to open stream: No such file or directory in D:WebSite	est.php on line 2

Fatal error: require() [function.require]: Failed opening required ‘test1aaa.php’ (include_path=’.;C:php5pear’) in D:WebSite	est.php on line 2

現(xiàn)在就能很清楚的知道include和require的區(qū)別:include引入文件的時(shí)候,如果碰到錯(cuò)誤,會(huì)給出提示,并繼續(xù)運(yùn)行下邊的代碼,require引入文件的時(shí)候,如果碰到錯(cuò)誤,會(huì)給出提示,并停止運(yùn)行下邊的代碼。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/29678.html

相關(guān)文章

  • PHPrequireinclude區(qū)別

    摘要:基本概述在中都是用來(lái)加載文件的。帶和不帶的區(qū)別主要是帶的會(huì)判斷你在加載這個(gè)文件之前是否已經(jīng)加載過(guò)了文件,避免重復(fù)加載。一般是放在流程控制的處理區(qū)段中。這種方式,可以把程式執(zhí)行時(shí)的流程簡(jiǎn)單化。經(jīng)測(cè)試,不存在該區(qū)別??赡艿桶姹敬嬖谠搮^(qū)別。 基本概述 require、require_once、include、include_once 在php中都是用來(lái)加載文件的。 帶once和不帶once...

    ysl_unh 評(píng)論0 收藏0
  • includeinclude_once、require、require_once區(qū)別

    摘要:作用上同包含文件并運(yùn)行使用位置函數(shù)內(nèi)函數(shù)外方法內(nèi)異是基礎(chǔ)上進(jìn)一步封裝,增加了一個(gè)文件是否已經(jīng)包含的判斷性能上異由于是基礎(chǔ)上進(jìn)一步封裝,所以比速度慢使用上異包含的文件存在錯(cuò)誤或者不存在的話,那么程序就會(huì)中斷執(zhí)行了,并顯示致命錯(cuò)誤包含的文件存在 作用上 同:包含文件并運(yùn)行(使用位置:函數(shù)內(nèi)、函數(shù)外、方法內(nèi)) 異:include_once/require_once是include/requ...

    Tamic 評(píng)論0 收藏0
  • PHP基礎(chǔ)知識(shí)梳理

    摘要:雙引號(hào)單引號(hào)區(qū)別雙引號(hào)解釋變量,單引號(hào)不解釋變量雙引號(hào)里插入單引號(hào),其中單引號(hào)里如果有變量的話,變量解釋雙引號(hào)的變量名后面必須要有一個(gè)非數(shù)字字母下劃線的特殊字符,或者用講變量括起來(lái),否則會(huì)將變量名后面的部分當(dāng)做一個(gè)整體,引起語(yǔ)法錯(cuò)誤能使單引 雙引號(hào)單引號(hào)區(qū)別 雙引號(hào)解釋變量,單引號(hào)不解釋變量雙引號(hào)里插入單引號(hào),其中單引號(hào)里如果有變量的話,變量解釋雙引號(hào)的變量名后面必須要有一個(gè)非數(shù)字、字...

    wemallshop 評(píng)論0 收藏0
  • PHP面試總結(jié)記錄

    摘要:盡管事務(wù)是維護(hù)數(shù)據(jù)庫(kù)完整性的一個(gè)非常好的方法,但卻因?yàn)樗莫?dú)占性,有時(shí)會(huì)影響數(shù)據(jù)庫(kù)的性能,尤其是在很大的應(yīng)用系統(tǒng)中。由于在事務(wù)執(zhí)行的過(guò)程中,數(shù)據(jù)庫(kù)將會(huì)被鎖定,因此其它的用戶請(qǐng)求只能暫時(shí)等待直到該事務(wù)結(jié)束。 1、雙引號(hào)和單引號(hào)的區(qū)別~雙引號(hào)解釋變量,單引號(hào)不解釋變量~雙引號(hào)解釋轉(zhuǎn)義字符,單引號(hào)不解釋轉(zhuǎn)義字符,但是解釋和~能使單引號(hào)字符盡量使用單引號(hào),單引號(hào)的效率比雙引號(hào)要高(雙引號(hào)要先遍...

    zebrayoung 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<