溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php中幾種包含文件函數(shù)有什么差別

發(fā)布時(shí)間:2021-07-16 11:42:35 來源:億速云 閱讀:158 作者:chen 欄目:編程語言

這篇文章主要介紹“php中幾種包含文件函數(shù)有什么差別”,在日常操作中,相信很多人在php中幾種包含文件函數(shù)有什么差別問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”php中幾種包含文件函數(shù)有什么差別”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

差別:1、include如果碰到錯(cuò)誤,會(huì)給出提示,并繼續(xù)向下執(zhí)行;而require會(huì)終止程序執(zhí)行。2、require_once和include_once中如果包含的文件已經(jīng)被包含過,就不會(huì)再次包含,但include和require會(huì)。

本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦

文件包含是指將另一個(gè)源文件的全部?jī)?nèi)容包含到當(dāng)前源文件中進(jìn)行使用,通常也稱為引入外部文件。引用外部文件可以減少代碼的重用性,是 PHP 編程的重要技巧。

PHP 中提供了 4 個(gè)非常簡(jiǎn)單卻很有用的包含語句,分別是 include 語句、require 語句、include_once 語句和 require_once 語句。這 4 種語句在使用上有一定的區(qū)別。下面分別進(jìn)行詳細(xì)講解。

1. include 語句

使用 include 語句包含外部文件時(shí),只有代碼執(zhí)行到 include 語句時(shí)才會(huì)將外部文件包含進(jìn)來,當(dāng)所包含的外部文件發(fā)生錯(cuò)誤時(shí),系統(tǒng)會(huì)給出一個(gè)警告,而整個(gè) PHP 程序會(huì)繼續(xù)向下執(zhí)行。

include 語句的語法格式如下:

include('filename') 或者 include 'filename'

其中 filename 為需要包含的文件路徑(相對(duì)路徑和絕對(duì)路徑都行),filename 為一個(gè)字符串,所以需要使用單引號(hào)' '或雙引號(hào)" "包裹起來。同時(shí) include 后面的括號(hào)也可以省略,省略括號(hào)時(shí) include 需要使用空格與后面的 filename 分隔開。

為了方便演示,這里我們準(zhǔn)備一個(gè) demo.php 文件,并在其中簡(jiǎn)單的定義一個(gè) $str 變量,如下所示:

<?php
    $str = 'https://www.php.cn/';
?>

【示例】使用 include 語句來包含 demo.php 文件,代碼如下所示:

<?php
    include './demo.php';
    echo $str;
?>

運(yùn)行結(jié)果如下:

https://www.php.cn/

2. require 語句

require 語句的使用方法與 include 語句類似,都是實(shí)現(xiàn)對(duì)外部文件的引用。在 PHP 文件執(zhí)行之前,PHP 解析器會(huì)用被引用文件的全部?jī)?nèi)容替換 require 語句,然后與 require 語句之外的其他語句組成新的 PHP 文件,最后再按新 PHP 文件執(zhí)行程序代碼。

注意:因?yàn)?require 語句相當(dāng)于將另一個(gè)源文件的內(nèi)容完全復(fù)制到本文件中,所以一般將其放在源文件的起始位置,用于引用需要使用的公共函數(shù)文件和公共類文件等。

require 語句和 include 語句幾乎完全一樣,不同的是當(dāng)被包含文件不存或存在錯(cuò)誤時(shí),require 語句會(huì)發(fā)出一個(gè) Fatal error 錯(cuò)誤并終止程序執(zhí)行,而 include 則會(huì)發(fā)出一個(gè) Warining 警告但程序會(huì)接著向下執(zhí)行。

require 語句的語法格式為:

require(filename) 或者 require 'filename'

參數(shù) filename 為待包含的文件路徑,其特點(diǎn)與 include 語句中的參數(shù)一樣。

【示例】使用 require 語句來包含上面定義的 demo.php 文件,代碼如下所示:

<?php
    require './demo.php';
    echo $str;
?>

運(yùn)行結(jié)果如下:

https://www.php.cn/

3. include_once 語句

include_once 語句和 include 語句類似,唯一的區(qū)別就是如果包含的文件已經(jīng)被包含過,就不會(huì)再次包含。include_once 可以確保在腳本執(zhí)行期間同一個(gè)文件只被包含一次,以避免函數(shù)重定義、變量重新賦值等問題。

下面我們調(diào)整一下上面定義的 demo.php 文件,如下所示:

<?php
    echo '億速云<br>';
    echo 'https://www.php.cn/';
?>

【示例】使用 include_once 語句來包含 demo.php 文件,代碼如下所示:

<?php
    include_once './demo.php';
    include_once './demo.php';
    include_once './demo.php';
?>

運(yùn)行結(jié)果如下:

億速云
https://www.php.cn/

4. require_once 語句

require_once 語句是 require 語句的延伸,它的功能與 require 語句基本類似,不同的是,在應(yīng)用 require_once 語句時(shí)會(huì)先檢查要包含的文件是不是已經(jīng)在該程序中的其他地方被包含過,如果有,則不會(huì)再次重復(fù)包含該文件。

【示例】使用 require_once 語句來包含 demo.php 文件,代碼如下所示:

<?php
    require_once './demo.php';
    require_once './demo.php';
    require_once './demo.php';
?>

運(yùn)行結(jié)果如下:

億速云
https://www.php.cn/

到此,關(guān)于“php中幾種包含文件函數(shù)有什么差別”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(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)容。

php
AI