您好,登錄后才能下訂單哦!
本篇文章為大家展示了php中require_once如何使用,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
require_once 語句和 require 語句完全相同,唯一區別是 PHP 會檢查該文件是否已經被包含過,如果是則不會再次包含。
參見 include_once 的文檔來理解 _once 的含義,并理解與沒有 _once 時候有什么不同。
有一個文件a.php,里面有一個變量$var=1;我在b.php 中用require_once()函數引用了a.php文件,然后我在c.php 中用require_once()引用了b.php文件,在c.php中有一個函數 需要引用a.php中的變量$var. 但卻訪問不了 變量的值為空
如果我想訪問變量$var該怎么做。
require_once() 為了避免重復加載文件。 意為:加載文件一次
require_once() 語句在腳本執行期間包括并運行指定文件。此行為和 require() 語句類似,唯一區別是如果該文件中的代碼已經被包括了,則不會再次包括。
一般都用在包含文件的時候,比如你寫了一個類文件a.php,這個文件主要是定義類,代碼可能如下:
class p
{
public $a;
function make(}
{
echo $a;
}
}
這個時候你在文件b.php中要使用到該類,就可以再b.php開頭加上,require_once(a.php);來加載這個a.php,就相當于把a.php的文件的代碼復制到了b.php中。
類似的方法還有requeire(),include(),include_once()其中帶_once字樣的方法都是聲明只加載一次,因為你require_once()的別文件中可能已經require_once(a.php)了,如果再加載就造成重復加載,代碼量會增加造成解析減慢。
我幫你測試過了,沒有問題,require_once就行
a.php:
$a=123;
?>
b.php:
require_once("a.php");
?>
c.php:
require_once("b.php");
echo $a;
?>
require_once 與require的區別:
require_once 只會加載同一個文件一次,require會加載多次。
相信和我一樣的小白還是有些疑惑吧。于是我們猜想:如果456.php引入過123.php,現在文件test_require.php引入了“456.php”與“123.php”。如果是使用require方法,那么在test_require.php中,123.php將被引入2次,而使用require_once方法123.php被引入一次。那么我們做實驗吧!
一、require方法
123.php的內容如下:
1
2
echo "123\n";
456.php內容如下:
require("123.php");
echo "456\n";
test_require.php的內容如下:
require("123.php");
require("456.php");
運行test_require.php。
二、require_once方法
123.php內容不變。456.php和test_require.php更改require_once方法。內容如下:
//456.php
require_once "123.php";
echo "456\n";
//test_require.php
require_once "123.php";
require_once "456.php";
運行test_require.php,結果如下:
三、混用出錯
如果,在456.php中使用require方法,而在require_once方法,那么require_once將會失效。三個文件代碼如下:
//123.php
echo "123\n";
//456.php
require "123.php";
echo "456\n";
//test_require.php
require_once "123.php";
require_once "456.php";
上述內容就是php中require_once如何使用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。