[英]Difference between require, include, require_once and include_once?
[英]What is the difference between include and include_once with and without round brackets
我最近發現 php 中有更多類型的include()
我的問題是以下說明之間的區別是什么:
include_once 'file.txt';
include 'file.txt';
include ('file.txt');
include_once ('file.txt');
如果未創建file.txt
我收到的錯誤消息是什么?
文件名周圍的括號沒有區別。 include
是一種語言結構,而不是函數,因此它的參數不需要括號。 所以它們是等價的,就像:
echo "foo";
echo ("foo");
所以只有兩種形式: include
和include_once
。 它們之間的區別在於如果您嘗試在同一個腳本中多次包含同一個文件會發生什么。 include
每次都會包含它, include_once
只會在第一次執行,並忽略所有重復。
如果文件執行某些操作,例如回顯 HTML 或設置變量,則通常使用include
。 include_once
用於定義函數和類的文件,因為如果您嘗試重新定義它們,它們將得到一個錯誤。
如果文件不存在,您將收到如下警告:
警告:include(file.txt):無法打開流:第 4 行的 /path/to/your/script.php 中沒有這樣的文件或目錄
警告:include():無法在第 4 行的 /path/to/your/script.php 中打開包含 (include_path='.:') 的“file.txt”
include
和include_once
的警告相同。
還有require
和require_once
。 它們就像include
和include_once
,但如果文件不存在,它不會打印警告,而是打印錯誤並停止腳本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.