根据我的理解,使用像require_once
这样的东西,实际上会将代码从一个文件复制并粘贴到另一个文件中,就好像它最初是在第一个文件中一样。
这意味着如果我要做这样的事情那将是有效的
foo.php
<?php
require_once("bar.php");
?>
bar.php
<?php
print "Hello World!"
?>
正在运行php foo.php
只会输出"Hello World!"
现在我的问题是,如果我在方法中包含require_once
,那么在加载脚本时是加载包含的文件,还是仅在调用方法时加载?
如果仅在调用该方法时,是否有任何有益的性能。或者就像我将所有代码保存在一个大文件中一样。
我主要是因为我创建了一个API
文件,它处理大量的调用,我不想简化文件。 (我知道我可以这样做只是创建单独的类,但我认为这将是很好的知道)
(对不起,如果已经询问过,我不知道该搜索什么)
答案 0 :(得分:2)
它仅包括调用方法的时间,但是您是否查看了autoloading?
答案 1 :(得分:1)
1)仅在调用方法时。
2)我认为动态加载会带来无形的好处,因此如果没有使用,PHP解释器就不必解析额外的代码。
答案 2 :(得分:0)
我通常使用include(&#39; bar.php&#39;);当我使用databvase信息时,我使用它,我有一个名为database.php的文件,带有登录信息,当文件加载时,它立即调用它。我不需要调用该功能。它可能不是最有效和最有效的,但它对我有用。你也可以使用include_once ... include基本上做你想要的,它基本上复制代码..
答案 3 :(得分:0)
正如其他人所说,是的,它包括在及时。
但是,请注意变量定义(require()
从方法中只允许访问该方法范围内的局部变量。
请记住,您还可以从包含的文件返回值(即字符串),以及使用ob_start()
等的缓冲区输出。