聊聊PHP中require_once()函數(shù)為什么不好用
在上一篇《聊聊PHP中die()和sleep()函數(shù)的用法》中給大家簡(jiǎn)單介紹了die()和sleep()函數(shù)的使用方法,感興趣的朋友可以去學(xué)習(xí)了解一下~
本文將告訴你PHP中require_once()為什么不好用!
不過在說它不好用之前,我們先開看看require_once()函數(shù)的定義和用法。
require_once()函數(shù)是PHP中的內(nèi)置函數(shù),當(dāng)我們想要將一個(gè)PHP文件引入到另一個(gè)文件中時(shí),例如當(dāng)我們需要在PHP腳本中多次引入一個(gè)文件時(shí),它就非常有用了。它用于檢查文件是否被包含了不止一次,因?yàn)槿绻募呀?jīng)被包含了,它會(huì)在運(yùn)行腳本時(shí)忽略所有引入的內(nèi)容。
語法是“require_once('文件名和路徑');”
require_once函數(shù)只接受一個(gè)參數(shù)'文件名和路徑',這是我們想要包含在PHP腳本中的文件。它是一個(gè)字符串類型參數(shù)。
返回值則是:如果找到了被調(diào)用的文件,并且如果文件已經(jīng)被包含,那么函數(shù)將返回布爾值True,如果文件不被包含,那么函數(shù)將包含文件并返回True。但是,如果沒有找到被調(diào)用的文件,則會(huì)出現(xiàn)致命錯(cuò)誤,不會(huì)顯示輸出,執(zhí)行會(huì)停止,返回Boolean False。
PHP中的require_once()函數(shù)的使用示例:
文件名:test.php
代碼:
<?php // 文件內(nèi)容 echo "歡迎來到PHP中文網(wǎng)!"; ?>
文件名:index.php
代碼:
<?php
// 包括文件
require_once('test.php');
require_once('test.php');
?>
輸出:
歡迎來到PHP中文網(wǎng)!
注:require_once()函數(shù)會(huì)忽略第一個(gè)文件引入后的所有類似的引入。
下面我們就來講講為什么require_once()函數(shù)不好用?
有兩點(diǎn):
1、require_once() 函數(shù)在包含所有文件的同時(shí)給服務(wù)器帶來了大量負(fù)載。
2、require_once() 函數(shù)的功能在存儲(chǔ)變量時(shí)在重復(fù)函數(shù)中使用時(shí)無法正常工作。
文件名:my_file.php
示例:
<?php // 文件內(nèi)容 $var = 'PHP'; ?>
文件名:check.php
<?php
function func() {
require_once('my_file.php');
return $var;
}
for($i = 1; $i <= 3; $i++) {
echo func() . "
";
}
?>
輸出:
PHP
通過將上面示例中的 require_once() 函數(shù)替換為 require() 函數(shù),我們可以確保該變量$var在每次函數(shù)調(diào)用時(shí)都可用。
文件名:check2.php
<?php
function func() {
require('my_file.php');
return $var;
}
for($i = 1; $i <= 3; $i++) {
echo func() . "
";
}
?>
輸出:
PHP PHP PHP
與 require() 或 include() 函數(shù)相比,require_once() 函數(shù)速度較慢,因?yàn)樗诿看文_本調(diào)用函數(shù)時(shí)都要檢查文件是否已包含。
到此這篇關(guān)于聊聊PHP中require_once()函數(shù)為什么不好用的文章就介紹到這了,更多相關(guān)PHP require_once()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN 的簡(jiǎn)易安裝配置
Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN 的簡(jiǎn)易安裝配置...2006-11-11
php異常:Parse error: syntax error, unexpected T_ENCAPSED_AND_W
PHP會(huì)出現(xiàn)eval()'d code error 錯(cuò)誤提示的原因一般都是因?yàn)槟0邋e(cuò)誤,原因有以下幾種情況2011-05-05
PHP跨時(shí)區(qū)(UTC時(shí)間)應(yīng)用解決方案
解決PHP跨時(shí)區(qū)應(yīng)用需要將將程序內(nèi)部時(shí)區(qū)設(shè)置為UTC時(shí)間.(UTC 也可以叫 GMT) 數(shù)據(jù)庫中存儲(chǔ)UTC時(shí)間等等,感興趣的朋友可以了解下2013-01-01
PHP鉤子與簡(jiǎn)單分發(fā)方式實(shí)例分析
這篇文章主要介紹了PHP鉤子與簡(jiǎn)單分發(fā)方式,結(jié)合實(shí)例形式分析了PHP鉤子的定義與使用方法,以及多通道自由切換的實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-09-09
Ajax+Jpgraph實(shí)現(xiàn)的動(dòng)態(tài)折線圖功能示例
這篇文章主要介紹了Ajax+Jpgraph實(shí)現(xiàn)的動(dòng)態(tài)折線圖功能,結(jié)合實(shí)例形式分析了ajax結(jié)合jpgraph.php類庫繪制動(dòng)態(tài)折線圖的相關(guān)操作技巧,需要的朋友可以參考下2019-02-02
PHP實(shí)現(xiàn)隨機(jī)調(diào)用圖片的示例代碼
在Web開發(fā)中,使用PHP可以輕松實(shí)現(xiàn)各種有趣的功能,這篇文章主要為大家介紹了如何使用PHP來實(shí)現(xiàn)隨機(jī)調(diào)用圖片,感興趣的小伙伴可以了解一下2023-08-08

