【发布时间】:2011-07-28 08:38:37
【问题描述】:
我的整个站点都有一个函数文件,并且给定一个页面,文件的 90% 甚至都没有被调用。所以我只想加载页面中调用的函数,我是 php 新手。
【问题讨论】:
-
除非文件中有成千上万个函数,否则我不会担心。
我的整个站点都有一个函数文件,并且给定一个页面,文件的 90% 甚至都没有被调用。所以我只想加载页面中调用的函数,我是 php 新手。
【问题讨论】:
通过使函数成为静态函数,将函数组合成具有共同特征的多个对象,并将每个对象放在单独的文件中。然后使用 PHP5 自动加载函数,仅在使用时才加载适当的对象。
【讨论】:
您可以将此文件拆分为许多小文件,并仅包含您需要使用的文件。
但是,如果它不是一个大文件,它根本不会降低您的性能
【讨论】:
您可以将函数文件拆分为多个文件,但请注意,如果您需要更多文件,加载速度可能会更慢,因为您需要更多 IO 命令来加载不同的文件。
此外,您还可以按功能拆分文件。如果您觉得所有这些功能都属于一起,请将它们一起保存在该文件中。它不会让你的脚本变慢很多。
如果您愿意,您可以将函数放在(静态)类中并使用自动加载器来加载文件,但我不赞成这种解决方案。我认为静态类只是让函数(和变量)脱离全局范围的借口,而仅为自动加载创建类是在滥用自动加载功能。 当然,如果您创建一个更加面向对象的脚本,那么使用类也是有意义的,并且自动加载它们可能会很方便。
【讨论】:
实际上,有一个可用的函数不是问题,但您只在应用程序的一部分中使用它。更重要的是,当您需要时,您拥有一切,而无需真正关心何时加载。
如果您的系统增长,您可能会寻找自动加载器。 PHP 支持autoloading of classes,但不支持函数。但是,您可以将您的函数分组到类中(有些人会因为发表这样的声明而打我一巴掌)然后使用自动加载。
【讨论】:
如果您的文件大小不大,那么它根本不会降低您的性能。如果您想实现目标,请将相关功能分组并将它们放在单独的文件中,并且只包含必要的文件...
【讨论】: