您好,登錄后才能下訂單哦!
這篇文章主要介紹了PHP文件包含的概念是什么的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇PHP文件包含的概念是什么文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。
在一個(gè)PHP腳本中,去將另外一個(gè)文件(PHP)包含進(jìn)來(lái),去合作完成一件事情。
要么使用被包含文件中的內(nèi)容,實(shí)現(xiàn)代碼的共享(重用):向上包含(索要)向上包含:在當(dāng)前腳本要用某個(gè)代碼之前包含別的文件
要么自己有東西可以給別的文件使用,實(shí)現(xiàn)代碼的共享(重用):向下包含(給予)向下包含:在自己有某個(gè)東西的時(shí)候,需要?jiǎng)e的腳本來(lái)顯示(自己代碼寫完之后包含其他文件)
最大的作用:分工協(xié)作,每個(gè)腳本做的事情不一樣,因此可以使用協(xié)作方式,讓多個(gè)腳本共同完成一件事情。
Include:包含文件
Include_once:系統(tǒng)會(huì)自動(dòng)判斷文件包含過(guò)程中,是否已經(jīng)包含過(guò)(一個(gè)文件最多被包含一次)
Require:與include相同
Require_once:以include_once相同
被包含文件代碼
<h4>文件包含——被包含文件</h4> <?php header("Content-type:text/html;charset=gbk"); $a = 2;$b = 4; define("xiaofeng",'cool');
包含文件代碼
<h4>文件包含——包含文件</h4> <?php header("Content-type:text/html;charset=gbk"); include "56.php";//包含文件56.php echo $a,"<hr>",$b,"<hr>",xiaofeng;
被包含文件代碼
<h4>文件包含——被包含文件</h4> <?php header("Content-type:text/html;charset=gbk"); echo $a,"<hr>",$b,"<hr>",xiaofeng;//輸出數(shù)據(jù)
包含文件代碼
<h4>文件包含——包含文件</h4> <?php header("Content-type:text/html;charset=gbk"); $a = 2;$b = 4; define("xiaofeng",'cool');//定義數(shù)據(jù) include_once '59.php';//包含數(shù)據(jù)為了顯示以上的內(nèi)容
讀取代碼文件(PHP程序)
編譯:將PHP代碼轉(zhuǎn)換成字節(jié)碼(生成opcode)
zendengine來(lái)解析opcode,按照字節(jié)碼去進(jìn)行邏輯運(yùn)算
轉(zhuǎn)換成對(duì)應(yīng)的HTML代碼
在文件加載(include或者require)的時(shí)候,系統(tǒng)會(huì)自動(dòng)的將被包含文件中的代碼相當(dāng)于嵌入到當(dāng)前文件中
加載位置:在哪加載,對(duì)應(yīng)的文件中的代碼嵌入的位置就是對(duì)應(yīng)的include位置
在PHP中被包含的文件是單獨(dú)進(jìn)行編譯的
注意:PHP文件在編譯的過(guò)程中如果出現(xiàn)了語(yǔ)法錯(cuò)誤,那么會(huì)失敗(不會(huì)執(zhí)行);但是如果被包含文件有錯(cuò)誤的時(shí)候,系統(tǒng)會(huì)在執(zhí)行到包含include這條語(yǔ)句的時(shí)候才會(huì)報(bào)錯(cuò)。
文件在加載的時(shí)候需要指定文件路徑才能保證PHP正確的找到對(duì)應(yīng)的文件。
Windows:盤符C:/路徑/PHP文件
Linux:/路徑/PHP文件
從網(wǎng)站根目錄開始(網(wǎng)絡(luò)絕對(duì)路徑)
/:相對(duì)于網(wǎng)站主機(jī)名字對(duì)應(yīng)的路徑
Localhost/index.php -> E:/server/apache/htdocs/index.php
./:表示當(dāng)前文件夾
../:上級(jí)目錄(當(dāng)前文件夾的上一層文件夾)
1、 絕對(duì)路徑相對(duì)效率偏低,但是相對(duì)安全(路徑不會(huì)出問(wèn)題)
2、 相對(duì)路徑相對(duì)效率高些,但是容易出錯(cuò)(相對(duì)路徑會(huì)發(fā)生改變)
一個(gè)文件包含另外一個(gè)文件,同時(shí)被包含的文件又包含了另外一個(gè)文件。嵌套包含的時(shí)候就很容易出現(xiàn)相對(duì)路徑出錯(cuò)的問(wèn)題:相對(duì)路徑會(huì)因?yàn)槲募陌淖儯?/和../):windows下面,每一個(gè)文件夾下都有.和..的文件夾。
Include系統(tǒng)會(huì)碰到一次,執(zhí)行一次;如果對(duì)統(tǒng)一個(gè)文件進(jìn)行多次加載,那么系統(tǒng)會(huì)執(zhí)行多次;
Include_once:系統(tǒng)碰到多次,也只會(huì)執(zhí)行一次。
本質(zhì)都是包含文件,唯一的區(qū)別在于包含不到文件的時(shí)候,報(bào)錯(cuò)的形式不一樣
Include的錯(cuò)誤級(jí)別比較輕:不會(huì)阻止代碼執(zhí)行
Require要求較高:如果包含出錯(cuò)代碼不再執(zhí)行(require后面的代碼)
關(guān)于“PHP文件包含的概念是什么”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“PHP文件包含的概念是什么”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。