當前位置:首頁 » 編程語言 » phpinclude參數

phpinclude參數

發布時間: 2023-05-29 13:54:46

1. 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 配置選項。
注:由於這是一個語言結構而非函數,因此它無法被變數函數調用。

2. php的fopen()函數的use_include_path參數怎麼理解

需要指定的目錄列表,包括fopen(),file(),readfile()和file_get_contents()函數尋找文件。格式就像系統的PATH環境變數:用冒號隔開的目錄列表在Unix或Windows的分號。

PHP認為包括路徑中的每個條目分別包括在尋找文件。它將檢陵殲查第一個路徑,如果它沒有找到它,檢查下一個路徑,直到定位包含文件或返回警告或錯誤。你可以在運行時修改或設置包括路徑使用set_include_path()。

示例# 1 Unix包含路徑
include_path=".:/php/includes
示例# 2窗口包含路徑
include_path=".;c:\php\includes"
使用一個。在包括路徑允許相對包括,因為這意味高瞎著戚汪空當前目錄。然而,它顯式地使用包括「更為有效。比在PHP /文件總是檢查每個包含當前目錄。

3. PHP裡面include是什麼意思啊

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

4. 請教php中include的參數傳遞 - PHP進階討論

PHP中include可以使用全局變數,
跟include時處在同一個訪問域內的變數應該都可以訪問到.
查看原帖>>

熱點內容
c語言中a10什麼意思 發布:2024-04-27 10:45:43 瀏覽:58
物聯網中ftp是什麼意思 發布:2024-04-27 10:41:17 瀏覽:986
銀行密碼保護在哪裡 發布:2024-04-27 10:25:23 瀏覽:189
tomcat源碼導入eclipse 發布:2024-04-27 10:25:15 瀏覽:194
android的api 發布:2024-04-27 10:23:39 瀏覽:683
官式訪問 發布:2024-04-27 10:04:00 瀏覽:522
國產高配置有哪些 發布:2024-04-27 09:18:26 瀏覽:948
建行手機app忘記密碼如何修改 發布:2024-04-27 08:58:59 瀏覽:393
蟻群演算法的數學模型 發布:2024-04-27 08:58:39 瀏覽:994
androidactivity生命 發布:2024-04-27 07:33:48 瀏覽:84