什么时候.php文件太大了?

时间:2013-05-30 01:57:47

标签: php apache

我正在写一个PHP类。目前有1000行代码,文件大小为46 KB。这不是一个疯狂的大小,但这让我思考。

问:由于文件大小和/或PHP文件中包含的代码量,性能何时开始受到影响?

3 个答案:

答案 0 :(得分:5)

对于php,没有明显的区别(特别是如果你使用任何操作码缓存)如果每100行有10个文件或1000行有1个文件。

但从可维护性的角度来看,最好将班级责任分成几个。

答案 1 :(得分:2)

与其他人的建议一样,主要关注文件大小应该是可读性并保持代码库可理解。

但是,关于PHP文件大小和性能的原始问题,它取决于所需的性能类型。对于不经常执行的PHP代码 - 例如通过命令行在客户端机器上执行的PHP程序,而不是加载网页的访问者 - 大文件大小可能不明显。

相比之下,在高性能场景中,即使是相当小的PHP文件也会占用大量的系统资源。 PHP性能的一般问题是驱使Facebook编写their own JIT virtual machine来执行PHP代码的原因 - 因为随着Facebook规模扩大,PHP曾经可接受的性能变得可怕。

上述情况通常适用于优化 - 如果没有更广泛的上下文进行分类,很难在好的和坏的性能之间划清界限。如果您担心PHP代码的性能 - 无论文件大小是否相关 - 我建议使用像Xdebug这样的PHP分析器并监视服务器上的系统资源。

编辑,根据Sébastien Renauld的建议,我将有关PHP和操作码缓存的以下信息添加到我的答案中。不过,我不想自己写一遍,而是想在这个StackOverflow question that covers nearly the same topic.

上指出接受的答案

答案 2 :(得分:0)

我不是任何专家,但我会说你可能不会遇到问题,直到你的文件大小占你的PHP内存限制的很大一部分。

我会告诉你,我在一个PHP文件中乱码。我刚检查过它是11,487行。

该文件以及2,056行的另一个文件都包含在我的开发站点的每个页面上。

我发现没有明显的性能问题。

也许我应该解释为什么我有这么大的文件。

我专注于让整个程序正常运行。我决定只为大多数类使用这个文件,以便我可以轻松搜索它并在任何类中进行更改而无需查找文件。完成后,我将所有类拆分为单独的文件,并使用自动加载仅加载所需的类。这可能不会持续几个星期,但是当我这样做时,我会在之前和之后做一些基准测试,看看是否有任何性能差异,但我怀疑会有。

现在,我网站上的每个页面都会加载该文件。我只是加载了主页,根据Chrome,它耗时102毫秒。实际上使用了很多类并进行一些数据密集型工作并与MySQL交互的页面花了279毫秒。

所以在我看来,文件大小并不重要,直到它比我的11,487行大得多。为了提高速度,您需要更加关注优化代码。

例如,我刚问了一个关于数组处理的问题,其中一些解决方案让我的代码运行超过5分钟,大约30秒,以及几个解决方案,大约280毫秒。不要担心文件大小!