将函数保留在同一帮助程序文件或单独的文件中


Keep functions in the same helper file or separate files?

我应该尝试将所有帮助程序函数保留在同一个文件中(例如,all in functions.php),但代价是读取不必要的函数,还是将函数存储在单独的文件中,我只会包含具有所需函数的文件,代价是包含更多文件的开销?包含单独的帮助程序文件的开销有多大?我知道对于像图标这样的图像,将图标连接在 1 张图像中会更快,但我不确定这是否适用于这里。

这完全取决于您正在处理的项目 - 有时一种方法可能更快,有时另一种方法。但一般来说,只需避免创建大量全局帮助程序函数,而是将它们放在适当的类中,如果需要,可以作为静态帮助程序。然后阅读自动加载,并观看PHP的魔力为您一次性解决问题 - 根据需要自动加载和解析文件。

如果您还使用 PHP 5.5+(或具有类似 opcache 扩展名的旧版本),代码甚至会被预编译,从而进一步降低开销。

一般来说,再说一些 - 一旦你开始担心代码的解析开销,你通常会犯过早优化的罪过。在一个几乎所有网络服务器都有四核超线程千兆赫处理器并由RAID SATA存储支持的世界中,加载额外的文件将不是一个现实的问题。当所有代码完成后,找到真正的瓶颈,并在那里花费优化时间。