2013-08-19 31 views
1
<?php 
$t1 = microtime(true); 

require("File0.inc"); // size: 7.0 kB 
include("File1.inc"); // size: 30.8 kB 
include("File2.php"); // size: 99.0 kB 
require('File3.php'); // size: 1.6 kB 

echo "{includes: ".(microtime(true) - $t1)." seconds}"; 
?> 

此输出在0.013秒到0.018秒之间。
这对我来说确实是效率低下,我的代码(在它之后)在大约0.0002秒内运行。
如何最小化包含文件所需的执行时间?Php包含性能命中

+0

@Joe,如果有50个用户同时来到,那么这个问题将会很明显。 – funerr

回答

1

包含PHP文件需要时间,这是无法解决的。

如果加载时间对您来说真的是一个很大的问题,您可能必须将所有代码放到一个大文件中。但是,当谈到模块化和代码质量时,这是一场噩梦,所以您应该真的考虑获得更快的服务器,而不是这样做。

同时,您可以尝试使用memcachedAPC来缓存输出,以改善加载时间。

+0

如果其中一个文件它只是一个大关联数组呢? – funerr

+0

将大关联数组放在基于mem的键值存储区中,如memcached或redis。 – ciruvan

+0

我使用http://il1.php.net/apc,它使性能提高4-5倍,将其添加到答案中,以便其他人可以使用它(告诉他们它是自动的)。 – funerr