PHP之PHP文件引用详解
HP的文件引用涉及到四個(gè)函數(shù):
?
1.include()
2.include_once()
3.require()
4.require_once()
這四個(gè)函數(shù)常常會給PHP初學(xué)者造成困擾,總的來說困擾有這么幾個(gè):
1.四個(gè)函數(shù)的區(qū)別
2.這四個(gè)函數(shù)的適用環(huán)境
3.使用以上函數(shù)后造成的路徑問題
下面我們就這三個(gè)典型的問題進(jìn)行分析。
一、區(qū)別:
1.include_once()與require_once()在引入文件時(shí),會檢測該文件是否在之前已經(jīng)被引入過,如果已經(jīng)被引入過則直接返回TRUE。如果沒有被引入過,則引入文件。而其他兩個(gè)函數(shù)不會對文件是否被重復(fù)引入做出檢測。
注意:在PHP 4中的 Windows 系統(tǒng)下是不區(qū)分大小寫的。也就是說下面的代碼都是引入的a.php。當(dāng)然,PHP 5不會再出現(xiàn)這樣的情況了。
include_once "a.php"; include_once "A.php";
2.include()與inclue_once()在引入文件失敗時(shí),只會產(chǎn)生警告信息,但是不會終止程序繼續(xù)向下執(zhí)行。
Warning:require(wrongFile.php)[function.require]: failed to open stream:No such file or directory in C:homewebsite est.php on line 5
而其他兩個(gè)函數(shù)在文件引入失敗時(shí),會產(chǎn)生致命錯(cuò)誤,并終止整個(gè)程序的運(yùn)行。
Fatal error:require()[function.require]:Failed opening required 'wrongFile.php'(include_path='.;C:php5pear')in C:homewebsite est.php on line 5
二、使用環(huán)境
1. 由第二條實(shí)際上我們已經(jīng)可以看出他們各自的使用環(huán)境了。include()適合用來引入普通文件(例如:視圖模板),而require()適合用來引入核 心文件(例如:核心類文件)。因?yàn)榍罢咭氲奈募鄬τ谡麄€(gè)程序系統(tǒng)來說重要性要低一些,所以就算出錯(cuò)也可以繼續(xù)執(zhí)行后面的程序。但是如果說一個(gè)系統(tǒng)或者 框架的核心文件都引入失敗的話,那么程序還有繼續(xù)運(yùn)行下去的必要嗎?
2.include_once()與require_once()實(shí)際上就是在第三條基礎(chǔ)上對引入文件做了更嚴(yán)格的重復(fù)性檢測而已。同樣是前者一般性引入,后者重要引入。
三、路徑
至 于相對路徑問題,只要記住一個(gè)原則就可以了:加入A引入B,B同時(shí)又引入了C。那么,B中引入C的相對路徑應(yīng)該以A--C的相對路徑來寫。因?yàn)?#xff0c;PHP的 文件引入實(shí)際上就相當(dāng)于將B的代碼復(fù)制到A中,也就是說我們從頭到尾都在A中執(zhí)行代碼,當(dāng)然應(yīng)該以A為參考來引入C了。
四、其他
1.我們還可以用include()來引用遠(yuǎn)程PHP文件,并且先這個(gè)被引用的文件傳參,當(dāng)然這有一定的先決條件。(詳見官方手冊)
include 'http://www.example.com/file.php?foo=1&bar=2';
2.注意:這幾個(gè)函數(shù)不一定非得要在后面加括號
include('a.php'); include("a.php"); include 'a.php'; include "a.php";
以上的寫法都是可以的。當(dāng)然,如果后面的參數(shù)包含變量,你得斟酌一下。
OK,PHP文件引入就分析到這里。更多精彩內(nèi)容敬請關(guān)注重慶PHP社區(qū)!
?
作者:Angrybird來源: 重慶PHP http://www.php-chongqing.com
原文地址: http://www.php-chongqing.com/index.php/article/15
重慶PHP原創(chuàng),轉(zhuǎn)載請保留版權(quán)信息PHP之PHP文件引用詳解轉(zhuǎn)載于:https://www.cnblogs.com/zcds-jk/p/4345270.html
總結(jié)
以上是生活随笔為你收集整理的PHP之PHP文件引用详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【2013年11月12号】日记
- 下一篇: CentOS 6.4 i386 版本安装