Php 什么是一次';文件操作的真正含义是什么?

Php 什么是一次';文件操作的真正含义是什么?,php,Php,我有一个让我非常困惑的疑问,它是关于require\u once。我在StackOverflow上看到了关于它的消息,但我仍然不确定我是否理解 我知道require和include的区别在于,使用require时,脚本将发出致命错误并停止执行,而include则不会。但是我一直在问自己,\u once的真正含义,大多数人都会这样说:PHP将检查文件是否已经包含,如果已经包含,则不再包含(要求)它如何只需要一次脚本?我不明白这一点,因为在我看来,PHP脚本不像我们的浏览器下载并保存在机器上的CSS

我有一个让我非常困惑的疑问,它是关于
require\u once
。我在StackOverflow上看到了关于它的消息,但我仍然不确定我是否理解

我知道require和include的区别在于,使用require时,脚本将发出致命错误并停止执行,而include则不会。但是我一直在问自己,
\u once
的真正含义,大多数人都会这样说:PHP将检查文件是否已经包含,如果已经包含,则不再包含(要求)它
如何只需要一次脚本?我不明白这一点,因为在我看来,PHP脚本不像我们的浏览器下载并保存在机器上的CSS,因此不需要再次下载,我认为每次执行PHP脚本时,它都会再次执行它的工作,正如浏览器理解我们已经下载了CSS文件一样,我们无法理解这一点

\u once
的真正含义是什么?有人能给我举个例子吗,因为我不太懂,我是个初学者,我甚至不知道我问的问题是否恰当


如果可能,演示一些代码,以便我最终理解

想象一下这个场景。能够
包含
同一个文件非常好,因为您可以多次使用该文件并获得不同的结果:

display.php

echo $var;
$var = 'Hello ';
include('display.php');

$var = 'World ';
include('display.php');
function display($var) { echo $var; }
include('functions.php');
display('Hello ');

  //more code

include('functions.php');
display('World ');
index.php

echo $var;
$var = 'Hello ';
include('display.php');

$var = 'World ';
include('display.php');
function display($var) { echo $var; }
include('functions.php');
display('Hello ');

  //more code

include('functions.php');
display('World ');
这将产生:

你好 世界

然而,有时这会引起问题。这可能包含在不同的文件中,因此您需要
包含一次
,但要说明:

functions.php

echo $var;
$var = 'Hello ';
include('display.php');

$var = 'World ';
include('display.php');
function display($var) { echo $var; }
include('functions.php');
display('Hello ');

  //more code

include('functions.php');
display('World ');
index.php

echo $var;
$var = 'Hello ';
include('display.php');

$var = 'World ';
include('display.php');
function display($var) { echo $var; }
include('functions.php');
display('Hello ');

  //more code

include('functions.php');
display('World ');
生成一个致命错误:

致命错误:无法在第6行的index.php中重新声明display()(以前在index.php:1中声明)

因此,如果您有数百个文件,有些文件包含其他文件,这取决于某些逻辑/程序流,但有些文件只能包含一次(如上所示),那么这就是用例