在方法中使用require_once

时间:2012-03-02 22:34:30

标签: php function require-once

根据我的理解,使用像require_once这样的东西,实际上会将代码从一个文件复制并粘贴到另一个文件中,就好像它最初是在第一个文件中一样。 这意味着如果我要做这样的事情那将是有效的

foo.php

<?php
require_once("bar.php");
?>

bar.php

<?php
print "Hello World!"
?>

正在运行php foo.php只会输出"Hello World!"

现在我的问题是,如果我在方法中包含require_once,那么在加载脚本时是加载包含的文件,还是仅在调用方法时加载? 如果仅在调用该方法时,是否有任何有益的性能。或者就像我将所有代码保存在一个大文件中一样。

我主要是因为我创建了一个API文件,它处理大量的调用,我不想简化文件。 (我知道我可以这样做只是创建单独的类,但我认为这将是很好的知道)

(对不起,如果已经询问过,我不知道该搜索什么)

4 个答案:

答案 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()等的缓冲区输出。