我有大约10个使用大约30个函数的动态php页面。每个功能需要超过1页,每个页面需要不同的功能子集。在几个php页面之间共享功能的最有效方式
我一直在琢磨这些选项:
1 - 所有的功能在一个单一的文件包括:每个页面加载不需要的代码
2 - 在自己的每个功能包括文件:过多的服务器请求时加载每一页
4时附加的处理 - 一个包括每PHP页面文件,用的副本:单包括用条件仅需要基于REQUEST_URI声明函数文件 - 加载每一页
3该页面需要的功能:难以维护
人们如何处理这种情况?谢谢!
我有大约10个使用大约30个函数的动态php页面。每个功能需要超过1页,每个页面需要不同的功能子集。在几个php页面之间共享功能的最有效方式
我一直在琢磨这些选项:
1 - 所有的功能在一个单一的文件包括:每个页面加载不需要的代码
2 - 在自己的每个功能包括文件:过多的服务器请求时加载每一页
4时附加的处理 - 一个包括每PHP页面文件,用的副本:单包括用条件仅需要基于REQUEST_URI声明函数文件 - 加载每一页
3该页面需要的功能:难以维护
人们如何处理这种情况?谢谢!
将相关函数扔入库中包括。根据需要包含库。
此外,如果你花另外5秒钟想着这个,那将是你浪费
另外5秒(如果你不明白我在说什么,担心包括优化约为在你应该担心的事情列表中,第五十亿事情,直到最终用户报告的性能问题和随后的分析告诉你为止。)
嗯,没有。如果这30个函数都是逻辑上相关的,也许。海报不说。但是,如果这些功能在逻辑上不相关,那么不要将它们束缚到一个班级中。这不是OOP。 – 2010-09-13 20:36:08
@Frank Shearar只是试图将海报指向正确的方向。他没有**缝试图重新使用代码**和**我从来没有说**将所有的功能放在一个类中。 *只需将代码组织到类中并根据需要加载它们。* – Frankie 2010-09-13 20:44:46
我还没有找到广泛的组。将现在保持在一起,但一些关于OPP的阅读可能对以后的工作很有帮助......谢谢 – Deg 2010-09-13 23:00:29
首先将它们放在一个include_once'ed文件中。
如果性能成为问题,请首先在服务器上安装PHP加速器(将解析的PHP缓存到操作码中,以避免不断重新解析)。
当维护成为问题时,按功能分解它们。尽管如此,你仍然会得到一个全能的“util.inc”或“misc.inc”文件...
感谢您的帮助 – Deg 2010-09-13 23:03:25
'.inc'文件的问题在于您的代码可能对其他人可见。要么告诉你的网络服务器将带'.inc'扩展名的文件解释为PHP,要么将你的'.inc'文件放在网络上不可见的目录中,或者将你包含的代码放在'.php'文件中。如果您包含的代码包含敏感信息(如数据库密码),则情况尤其如此。 – TRiG 2010-09-14 09:14:15
...或告诉你的Web服务器永远不会显示.inc文件。将包含的代码放在Web服务器可以访问的.php文件中是不好的做法,因为如果它们意外执行,你不会去测试看看会发生什么,并且如果它们发生了可能会发生坏事。 – gavinandresen 2010-09-14 12:01:27
只是寻找地方来提高页面加载时间。将按照您的建议从别处开始。谢谢 – Deg 2010-09-13 22:56:04