在我需要的php文件中包含所有函数或仅包含我需要的函数?

时间:2011-07-01 12:01:45

标签: php performance stored-functions

所以这就是我想做的事。

  1. 第一个选项是写每个 每个函数在不同的php文件中 一个然后包括所有这些 一个名为include的php文件 functions.php和我创建的时候 一个新页面,让我们说index.php我 只需包含“functions.php”;

    为什么我需要这样做?因为我只需要包含一个文件,所有功能都将包含在内。现在问题可能是服务器负载。我不确定有多少未调用的函数会影响性能。

  2. 第二个选项是再次创建我需要的文件,组合它们,然后每当我需要一个函数时调用它。这样做的缺点是我要做更多工作才能进行分类,我必须包含大量文件

  3. 所以我想问一下,第一个选项是否增加了cpu和内存负载,我必须转到第二个?第一种方式是否有任何性能问题,或者php没有解析未使用的功能?

2 个答案:

答案 0 :(得分:5)

磁盘是服务器中最慢的部分,因此在这种情况下,“1个文件中的所有函数”将在理论上为您提供更多性能。

但我不建议您创建“functions.php”,更好的方法是OOP。使用方法创建classes(对象),使用autoloaders and PSR-0标准,您将忘记“include”和“require”。

答案 1 :(得分:4)

现在需要记住Donald Knuth's famous quote

  

程序员浪费了大量的资源   时间思考,或担心   关于,非关键部件的速度   他们的节目,以及这些尝试   在效率上实际上有一个强大的   调试时的负面影响   考虑维护。我们应该   比如,忘记效率低下   大约97%的时间:过早   优化是万恶之源。   但我们不应该放弃我们的   这个关键的3%的机会。“

通常,应调整您的开发模型以匹配项目的需求和目标。达到目标后,您可以随时回答您提出的问题。当你这样做时,你的问题可能会回答自己。程序结构将决定处理包含的最佳方式。

如果适用于您的项目,您可能希望考虑使用面向对象编程(OOP)。当你使用OOP时,如果你的对象处理自己的依赖加载,这个问题甚至可能成为一个问题。