當前位置:首頁 » 編程語言 » includephp

includephp

發布時間: 2022-08-24 23:49:49

php中include和require的區別詳解

require()語句的性能與include()相類似,都是包括並運行指定文件。不同之處在於:對include()語句來說,在執行文件時每次都要進行讀取和評估;而對於require()來說,文件只處理一次(實際上,文件內容替換require()語句)。這就意味著如果可能執行多次的代碼,則使用require()效率比較高。另外一方面,如果每次執行代碼時是讀取不同的文件,或者有通過一組文件迭代的循環,就使用include()語句。 require的使用方法如:require("myfile.php"),這個語句通常放在PHP腳本程序的最前面。PHP程序在執行前,就會先讀入require()語句所引入的文件,使它變成PHP腳本文件的一部分。include使用方法和require一樣如:include("myfile.php"),而這個語句一般是放在流程式控制制的處理區段中。PHP腳本文件在讀到include()語句時,才將它包含的文件讀取進來。這種方式,可以把程式執行時的流程簡單化。 incluce在用到時載入 require在一開始就載入 _once後綴表示已載入的不載入 PHP系統在載入PHP程序時有一個偽編譯過程,可使程序運行速度加快。但incluce的文檔仍為解釋執行。include的文件中出錯了,主程序繼續往下執行,require的文件出錯了,主程序也停了,所以包含的文件出錯對系統影響不大的話(如界面文件)就用include,否則用require。 require()和include()語句是語言結構,不是真正的函數,可以像php中其他的語言結構一樣,例如echo()可以使用echo("ab")形式,也可以使用echo "abc"形式輸出字元串abc。require()和include()語句也可以不加圓括弧而直接加參數。 include_once()和require_once()語句也是在腳本執行期間包括運行指定文件。此行為和include()語句及require()類似,使用方法也一樣。唯一區別是如果該文件中的代碼已經被包括了,則不會再次包括。這兩個語句應該用於在腳本執行期間,同一個文件有可能被包括超過一次的情況下,確保它只被包括一次,以避免函數重定義以及變數重新賦值等問題。 2、詳情 2.1 報錯 include引入文件的時候,如果碰到錯誤,會給出提示,並繼續運行下邊的代碼。 require引入文件的時候,如果碰到錯誤,會給出提示,並停止運行下邊的代碼。 用例子來說話,寫兩個php文件,名字為test-include.php和test-require.php,注意相同的目錄中,不要存在一個名字是test-nothing.php的文件。 test-include.php <?php include 'test-nothing.php'; echo 'abc'; ?> test-require.php <?php require 'test-nothing.php'; echo 'abc'; ?> 瀏覽http://localhost/test-include.php,因為沒有找到test-nothing.php文件,我們看到了報錯信息,同時,報錯信息的下邊顯示了abc,你看到的可能是類似下邊的情況: Warning: include(test-nothing.php) [function.include]: failed to open stream: No such file or directory in D:\www\test-include.php on line 2 Warning: include() [function.include]: Failed opening 'test-nothing.php' for inclusion (include_path='.;C:\php5\pear') in D:\www\test-include.php on line 2 abc 瀏覽http://localhost/test-require.php,因為沒有找到test-nothing.php文件,我們看到了報錯信息,但是,報錯信息的下邊沒有顯示abc,你看到的可能是類似下邊的情況: Warning: require(test-nothing.php) [function.require]: failed to open stream: No such file or directory in D:\www\test-require.php on line 2 Fatal error: require() [function.require]: Failed opening required 'test-nothing' (include_path='.;C:\php5\pear') in D:\www\test-require.php on line 2 2.2 條件引用 include()與require()的功能相同,用法上卻有一些不同,include()是有條件包含函數,而require()則是無條件包含函數。 例如下面例子,如果變數$somg為真,則將包含文件somefile.php: if($some){ include 'somefile.php'; } 但無論$some取何值,下面的代碼將把文件somefile.php包含進文件里: if($something){ require 'somefile.php'; } 下面的例子充分說明了這兩個函數之間的不同: $i = 1; while ($i < 3) { require "somefile.$i.php"; $i++; } 可以從以上這段代碼中看出,每一次循環的時候,程序都將把同一個文件包含進去,很顯然這不是我們想要的,可以看出這段代碼希望在每次循環時,將不同的文件包含進來,如果要完成這個功能,只能使用函數include(): $i = 1; while ($i < 3) { include "somefile.$i.php"; $i++; } 2.3 文件引用方式 include()執行時需要引用的文件每次都要進行讀取和評估,require()執行時需要引用的文件只處理一次(實際上執行時需要引用的文件內容替換了require()語句)可以看出若有包含這些指令之一的代碼和可能執行多次的代碼,則使用require()效率比較高,若每次執行代碼時相讀取不同的文件或者有通過一組文件疊代的循環,就使用include(),可以給想要包括的文件名設置變數,當參數為 include()時使用這個變數。

② php中include的包含的理解

include('./global.php');
include($SAR_PATH_INDEX .'default_incept.php');

其實就是引入兩個文件
$SAR_PATH_INDEX是變數
「 .「是字元串鏈接符
'default_incept.php' 也是一個字元串!
其它就是引入
include('library/default_incept.php');這個文件!

③ php裡面require和include的區別

require 的使用方法如 require("MyRequireFile.php"); 。這個函數通常放在 PHP 程序的最前面,PHP 程序在執行前,就會先讀入 require 所指定引入的文件,使它變成 PHP 程序網頁的一部份。常用的函數,亦可以這個方法將它引入網頁中。
include 使用方法如 include("MyIncludeFile.php"); 。這個函數一般是放在流程式控制制的處理部分中。PHP 程序網頁在讀到 include 的文件時,才將它讀進來。這種方式,可以把程序執行時的流程簡單化。

他們兩個的用途是完全一樣的,不一定非得哪個放在最前面哪個放在中間。他們最根本的區別在於錯誤處理的方式不一樣。

require一個文件存在錯誤的話,那麼程序就會中斷執行了,並顯示致命錯誤
include一個文件存在錯誤的話,那麼程序不會中端,而是繼續執行,並顯示一個警告錯誤。

1. include有返回值,而require沒有。

2. include()包括並運行指定文件 在處理失敗時include() 產生一個警告,被導入的程序代碼都會被執行,而且這些程序在執行的時候會擁有和源文件中呼叫到include()語句的位置相同的變數范圍。你可以導入同一個伺服器中的靜態頁面。

3. require()會將目標文件的內容讀入,並且把自己本身代換成這些讀入的內容 在處理失敗時require() 則導致一個致命錯。
這個讀入並且代換的動作是在PHP引擎編譯你的程序代碼的時候發生的,而不是發生在PHP引擎開始執行編譯好的程序代碼的時候(PHP 3.0引擎的工作方式是編譯一行執行一行,但是到了PHP 4.0以後就有所改變了,PHP 4.0是先把整個程序代碼全部編譯完成後,再將這些編譯好的程序代碼一次執行完畢,在編譯的過程中不會執行任何程序代碼)。require()通常來導入靜態的內容,而include()則適合用導入動態的程序代碼。

4. require是無條件包含也就是如果一個流程里加入require,無論條件成立與否都會先執行require。

5. require通常放在PHP程序的最前面,PHP程序在執行前,就會先讀入require所指定引入的文件,使它變成PHP程序網頁的一部份。常用的函數,亦可以這個方法將它引入網頁中。

6. include一般是放在流程式控制制的處理部分中PHP程序網頁在讀到include的文件時,才將它讀進來。這種方式可以把程序執行時的流程簡單化。

④ php include怎麼使用

include主要用於頁麵包含;一個php文件代碼調用另一個php文件代碼,使用包含include,相當於兩個頁面代碼組合到了一塊;
除此之外還有include_once() ,require_once()和require(),略有區別;

⑤ php中include和require的區別

1、概要
require()語句的性能與include()相類似,都是包括並運行指定文件。不同之處在於:對include()語句來說,在執行文件時每次都要進行讀取和評估;而對於require()來說,文件只處理一次(實際上,文件內容替換require()語句)。這就意味著如果可能執行多次的代碼,則使用require()效率比較高。另外一方面,如果每次執行代碼時是讀取不同的文件,或者有通過一組文件迭代的循環,就使用include()語句。
require的使用方法如:require("myfile.php"),這個語句通常放在PHP腳本程序的最前面。PHP程序在執行前,就會先讀入require()語句所引入的文件,使它變成PHP腳本文件的一部分。include使用方法和require一樣如:include("myfile.php"),而這個語句一般是放在流程式控制制的處理區段中。PHP腳本文件在讀到include()語句時,才將它包含的文件讀取進來。這種方式,可以把程式執行時的流程簡單化。
incluce在用到時載入
require在一開始就載入
_once後綴表示已載入的不載入
PHP系統在載入PHP程序時有一個偽編譯過程,可使程序運行速度加快。但incluce的文檔仍為解釋執行。include的文件中出錯了,主程序繼續往下執行,require的文件出錯了,主程序也停了,所以包含的文件出錯對系統影響不大的話(如界面文件)就用include,否則用require。
require()和include()語句是語言結構,不是真正的函數,可以像php中其他的語言結構一樣,例如echo()可以使用echo("ab")形式,也可以使用echo "abc"形式輸出字元串abc。require()和include()語句也可以不加圓括弧而直接加參數。
include_once()和require_once()語句也是在腳本執行期間包括運行指定文件。此行為和include()語句及require()類似,使用方法也一樣。唯一區別是如果該文件中的代碼已經被包括了,則不會再次包括。這兩個語句應該用於在腳本執行期間,同一個文件有可能被包括超過一次的情況下,確保它只被包括一次,以避免函數重定義以及變數重新賦值等問題。
2、詳情
2.1 報錯
include引入文件的時候,如果碰到錯誤,會給出提示,並繼續運行下邊的代碼。
require引入文件的時候,如果碰到錯誤,會給出提示,並停止運行下邊的代碼。
用例子來說話,寫兩個php文件,名字為test-include.php和test-require.php,注意相同的目錄中,不要存在一個名字是test-nothing.php的文件。
test-include.php
<?php
include 'test-nothing.php';
echo 'abc';
?>
test-require.php
<?php
require 'test-nothing.php';
echo 'abc';
?>
瀏覽http://localhost/test-include.php,因為沒有找到test-nothing.php文件,我們看到了報錯信息,同時,報錯信息的下邊顯示了abc,你看到的可能是類似下邊的情況:
Warning: include(test-nothing.php) [function.include]: failed to open stream: No such file or directory in D:\www\test-include.php on line 2
Warning: include() [function.include]: Failed opening 'test-nothing.php' for inclusion (include_path='.;C:\php5\pear') in D:\www\test-include.php on line 2
abc
瀏覽http://localhost/test-require.php,因為沒有找到test-nothing.php文件,我們看到了報錯信息,但是,報錯信息的下邊沒有顯示abc,你看到的可能是類似下邊的情況:
Warning: require(test-nothing.php) [function.require]: failed to open stream: No such file or directory in D:\www\test-require.php on line 2
Fatal error: require() [function.require]: Failed opening required 'test-nothing' (include_path='.;C:\php5\pear') in D:\www\test-require.php on line 2
2.2 條件引用
include()與require()的功能相同,用法上卻有一些不同,include()是有條件包含函數,而require()則是無條件包含函數。
例如下面例子,如果變數$somg為真,則將包含文件somefile.php:
if($some){
include 'somefile.php';
}
但無論$some取何值,下面的代碼將把文件somefile.php包含進文件里:
if($something){
require 'somefile.php';
}
下面的例子充分說明了這兩個函數之間的不同:
$i = 1;
while ($i < 3) {
require "somefile.$i.php";
$i++;
}
可以從以上這段代碼中看出,每一次循環的時候,程序都將把同一個文件包含進去,很顯然這不是我們想要的,可以看出這段代碼希望在每次循環時,將不同的文件包含進來,如果要完成這個功能,只能使用函數include():
$i = 1;
while ($i < 3) {
include "somefile.$i.php";
$i++;
}
2.3 文件引用方式
include()執行時需要引用的文件每次都要進行讀取和評估,require()執行時需要引用的文件只處理一次(實際上執行時需要引用的文件內容替換了require()語句)可以看出若有包含這些指令之一的代碼和可能執行多次的代碼,則使用require()效率比較高,若每次執行代碼時相讀取不同的文件或者有通過一組文件疊代的循環,就使用include(),可以給想要包括的文件名設置變數,當參數為 include()時使用這個變數。

⑥ PHP裡面include是什麼意思啊

include包含文件,一般用於引用資料庫連接文件和網站一些共用的文件如:
include("conn.php"); 寫上這一句就在這個文件中載入了conn.php文件裡面的代碼了。

⑦ php include()的具體用法

nclude語句會獲取指定文件中存在的所有文本/代碼/標記,並復制到使用 include 語句的文件中。

語法:

<?phpinclude'filename';?>

require語句和include的功能是相同的,只是在錯誤處理方面不一樣。

require 會生成致命錯誤(E_COMPILE_ERROR)並停止腳本。

include 只生成警告(E_WARNING),並且腳本會繼續。

(7)includephp擴展閱讀:

php語句

include()語句包含並運行指定文件。

以下文檔也適用於require()。這兩種結構除了在如何處理失敗之外完全一樣。include()產生一個警告而require()則導致一個致命錯誤。

換句話說,如果想在遇到丟失文件時停止處理頁面就用require()。include()就不是這樣,腳本會繼續運行。同時也要確認設置了合適的 include_path。注意在 php 4.3.5 之前,包含文件中的語法錯誤不會導致程序停止,但從此版本之後會。

⑧ php的include怎樣引用方法

只需要引入包含方法的文件就可以直接調用方法了。
比如在a.php文件里寫一個方法
function a(){
return 'String a';

}

在b.php文件里包含a.php文件
include 'a.php';
$string = a();
echo $string; // String a
如果形勢不是你所想要的,我們可以詳細交流。

⑨ include的php語句

include()語句包含並運行指定文件。
以下文檔也適用於require()。這兩種結構除了在如何處理失敗之外完全一樣。include()產生一個警告而require()則導致一個致命錯誤。換句話說,如果想在遇到丟失文件時停止處理頁面就用require()。include()就不是這樣,腳本會繼續運行。同時也要確認設置了合適的 include_path。注意在 php 4.3.5 之前,包含文件中的語法錯誤不會導致程序停止,但從此版本之後會。
尋找包含文件的順序先是在當前工作目錄的相對的 include_path 下尋找,然後是當前運行腳本所在目錄相對的 include_path 下尋找。例如 include_path 是 .,當前工作目錄是 /www/,腳本中要 include 一個 include/a.php 並且在該文件中有一句 include b.php,則尋找 b.php 的順序先是 /www/,然後是 /www/include/。如果文件名以 ../ 開始,則只在當前工作目錄相對的 include_path 下尋找。
當一個文件被包含時,其中所包含的代碼繼承了 include 所在行的變數范圍。從該處開始,調用文件在該行處可用的任何變數在被調用的文件中也都可用。不過所有在包含文件中定義的函數和類都具有全局作用域。
例子 16-5. 基本的include()例子
vars.php<?php$color = 'green';$fruit = 'apple';?>test.php<?phpecho A $color $fruit; // Ainclude 'vars.php';echo A $color $fruit; // A green apple?> 如果 include 出現於調用文件中的一個函數里,則被調用的文件中所包含的所有代碼將表現得如同它們是在該函數內部定義的一樣。所以它將遵循該函數的變數范圍。
例子 16-6. 函數中的包含
<?phpfunction foo(){ global $color; include 'vars.php'; echo A $color $fruit;}/* vars.php is in the scope of foo() so * * $fruit is NOT available outside of this * * scope. $color is because we declared it * * as global. */foo(); // A green appleecho A $color $fruit; // A green?>例子 16-7. 通過 HTTP 進行的include()
<?php/* This example assumes that is configured to parse .php * * files and not .txt files. Also, 'Works' here means that the variables * * $foo and $bar are available within the included file. */// Won't work; file.txt wasn't handled by as phpinclude '/file.txt?foo=1&bar=2';// Won't work; looks for a file named 'file.php?foo=1&bar=2' on the// local filesystem.include 'file.php?foo=1&bar=2';// Works.include '/file.php?foo=1&bar=2';$foo = 1;$bar = 2;include 'file.txt'; // Works.include 'file.php'; // Works.?>相關信息參見使用遠程文件,fopen()和file()。
因為include()和require()是特殊的語言結構,在條件語句中使用必須將其放在語句組中(花括弧中)。
例子 16-8. include() 與條件語句組
<?php// This is WRONG and will not work as desired.if ($condition) include $file;else include $other;// This is CORRECT.if ($condition) { include $file;} else { include $other;}?>處理返回值:可以在被包括的文件中使用return()語句來終止該文件中程序的執行並返回調用它的腳本。同樣也可以從被包含的文件中返回值。可以像普通函數一樣獲得 include 調用的返回值。不過這在包含遠程文件時卻不行,除非遠程文件的輸出具有合法的 php 開始和結束標記(如同任何本地文件一樣)。可以在標記內定義所需的變數,該變數在文件被包含的位置之後就可用了。
因為include()是一個特殊的語言結構,其參數不需要括弧。在比較其返回值時要注意。
例子 16-9. 比較 include 的返回值
<?php// won't work, evaluated as include(('vars.php') == 'OK'), i.e. include('')if (include('vars.php') == 'OK') { echo 'OK';}// worksif ((include 'vars.php') == 'OK') { echo 'OK';}?>注:在 php 3 中,除非是在函數中調用否則被包含的文件中不能出現 return。在此情況下return()作用於該函數而不是整個文件。
例子 16-10.include()和return()語句
return.php<?php$var = 'php';return $var;?>noreturn.php<?php$var = 'php';?>testreturns.php<?php$foo = include 'return.php';echo $foo; // prints 'php'$bar = include 'noreturn.php';echo $bar; // prints 1?>$bar 的值為 1 是因為 include 成功運行了。注意以上例子中的區別。第一個在被包含的文件中用了return()而另一個沒有。如果文件不能被包含,則返回FALSE並發出一個 E_WARNING 警告。
如果在包含文件中定義有函數,這些函數可以獨立於是否在return()之前還是之後在主文件中使用。如果文件被包含兩次,php 5 發出致命錯誤因為函數已經被定義,但是 php 在return()之後不會抱怨函數已定義。推薦使用include_once()而不是檢查文件是否已包含並在包含文件中有條件返回。
另一個將 php 文件「包含」到一個變數中的方法是用輸出控制函數結合include()來捕獲其輸出,例如:
例子 16-11. 使用輸出緩沖來將 php 文件包含入一個字元串
<?php$string = get_include_contents('somefile.php');function get_include_contents($filename) { if (is_file($filename)) { ob_start(); include $filename; $contents = ob_get_contents(); ob_end_clean(); return $contents; } return false;}?>要在腳本中自動包含文件,參見 php.ini 中的 auto_prepend_file 和 auto_append_file 配置選項。
注:由於這是一個語言結構而非函數,因此它無法被變數函數調用。

熱點內容
app什麼情況下找不到伺服器 發布:2025-05-12 15:46:25 瀏覽:714
php跳過if 發布:2025-05-12 15:34:29 瀏覽:467
不定時演算法 發布:2025-05-12 15:30:16 瀏覽:131
c語言延時1ms程序 發布:2025-05-12 15:01:30 瀏覽:166
動物園靈長類動物配置什麼植物 發布:2025-05-12 14:49:59 瀏覽:737
wifi密碼設置什麼好 發布:2025-05-12 14:49:17 瀏覽:150
三位數乘兩位數速演算法 發布:2025-05-12 13:05:48 瀏覽:399
暴風影音緩存在哪裡 發布:2025-05-12 12:42:03 瀏覽:545
access資料庫exe 發布:2025-05-12 12:39:04 瀏覽:632
五開的配置是什麼 發布:2025-05-12 12:36:37 瀏覽:367