Php 带圆括号和不带圆括号的include和include_once之间有什么区别
我最近发现php中有更多类型的include 我的问题是以下说明之间的区别是什么:Php 带圆括号和不带圆括号的include和include_once之间有什么区别,php,Php,我最近发现php中有更多类型的include 我的问题是以下说明之间的区别是什么: include_once 'file.txt'; include 'file.txt'; include ('file.txt'); include_once ('file.txt'); 如果没有创建file.txt,我得到的错误消息是什么?文件名周围的括号没有区别。include是一种语言构造,而不是函数,因此它不需要在参数周围加括号。所以它们是等价的,就像: echo "foo"; echo ("foo"
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用于定义函数和类的文件,因为如果您尝试重新定义它们,这些文件将出错
如果文件不存在,您将收到如下警告:
警告:includefile.txt:无法打开流:第4行的/path/to/your/script.php中没有此类文件或目录
警告:include:在第4行的/path/to/your/script.php中打开“file.txt”以包含include_path=':'失败
include和include_的警告相同
还有require和require_一次。它们就像include和include\u once一样,但是如果文件不存在,它不会打印警告,而是打印错误并停止脚本。include\u once只执行它所说的操作。它只包含一次页面。如果您稍后使用include_调用它一次,它将不会包含它,因为它已经被包含。另一个将包括它被调用的次数。但是有两个提示,一个有,一个没有,区别是什么?没有区别。不管怎样,语法优先于我的理解。我只使用括号。@StemFlorin您的老师所说的是require,而不是include。@StemFlorin PHP参考手册对此进行了相当详细的介绍,你的第一站应该是问这样的问题,而不是让我们为你重复。我想知道你的教科书或php.net的文档中没有解释我的答案的哪一部分?我找不到并列比较。然后我检查了php上的手册。net,并找到了它……这有点尴尬。我很抱歉。