[PHP]区分include(),require(),include_once(),require_once()
1.include()与require()的区别(同理可区分include_once()与require_once())
include(),require()语句包含并运行指定文件。 这两种结构除了在如何处理失败之外完全一样。
include()产生一个警告而require()则导致一个致命错误。换句话说,如果想在遇到丢失文件时停止处理页面就用 require()。include()就不是这样,脚本会继续运行
例1:include()产生一个Warning而require()则导致一个Fatal error。
zhanhailiang@linux-06bq:~> php -r "include('a.php');"
Warning: include(a.php): failed to open stream: No such file or directory in Command line code on line 1
Warning: include(): Failed opening 'a.php' for inclusion (include_path='.:/usr/local/services/phplib/src:/usr/local/services/phplib/inc:/usr/local/services/php/lib/php') in Command line code on line 1
zhanhailiang@linux-06bq:~> php -r "require('a.php');"
Warning: require(a.php): failed to open stream: No such file or directory in Command line code on line 1
Fatal error: require(): Failed opening required 'a.php' (include_path='.:/usr/local/services/phplib/src:/usr/local/services/phplib/inc:/usr/local/services/php/lib/php') in Command line code on line 1
2.include()与include_once()的区别(同理可区别require()与require_once())
include_once()语句在脚本执行期间包含并运行指定文件。此行为和include()语句类似,唯一区别是如果该文件中的代码已经被包含了,则不会再次包含。如同此语句名字暗示的那样,只会包含一次。
include_once()应该用于在脚本执行期间同一个文件有可能被包含超过一次的情况下,想确保它只被包含一次以避免函数重定义,变量重新赋值等问题。
返回值和include()相同。如果文件已被包含,本函数返回TRUE。
例1:include()会多次包含指定文件,而include_once()不会。
zhanhailiang@linux-06bq:~> cat a.php
echo '1'.PHP_EOL;
zhanhailiang@linux-06bq:~> php -r "include('a.php');include('a.php');"
1
1
zhanhailiang@linux-06bq:~> php -r "include_once('a.php');include_once('a.php');"
1 www.2cto.com
例2:include_once()避免函数重定义。
zhanhailiang@linux-06bq:~> cat a.php
echo '1'.PHP_EOL;
function test() {}
zhanhailiang@linux-06bq:~> php -r "include('a.php');include('a.php');"
1
Fatal error: Cannot redeclare test() (previously declared in /home/zhanhailiang/a.php:4) in /home/zhanhailiang/a.php on line 4
zhanhailiang@linux-06bq:~> php -r "include_once('a.php');include_once('a.php');"
1

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Dreamweaver Mac版
視覺化網頁開發工具

記事本++7.3.1
好用且免費的程式碼編輯器

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具