一个ZendOptimizer的困惑,让人不解?
关于ZendOptimizer的困惑,让人不解?
今天在php环境中做了一个小测试,但测试结果相当让人不解.
所用版本:Apache2.2 + php-5.2.5-Win32
页面执行的测试代码如下:
命名为:test.php
<?php
class runtime
{
var $StartTime = 0;
var $StopTime = 0;
function get_microtime(){
list($usec, $sec) = explode(' ', microtime());
return ((float)$usec + (float)$sec);
}
function start(){
$this->StartTime = $this->get_microtime();
}
function stop(){
$this->StopTime = $this->get_microtime();
}
function spent(){
return round(($this->StopTime - $this->StartTime) * 1000, 1);
}
}
$runtime= new runtime;
$runtime->start();
$a = 0;
for($i=0; $i<10000000; $i++){
$a += $i;
}
$runtime->stop();
echo "页面执行时间: ".$runtime->spent()." 毫秒";
?>
-----------------------------
测试一:在php.ini中不加载ZendOptimizer.dll时
在执行test.php时,10次统计时间如下:
2197.2
2253.6
2253.6
2293
2200.7
2170.9
2343.3
2148.4
2123.4
2157.3
-----------------------------
测试二:在php.ini中加载ZendOptimizer.dll时
加载方法如下:
[Zend]
zend_extension_ts="D:\web\php-5.2.5-Win32\ext\ZendOptimizer.dll"
zend_optimizer.optimization_level=15
经过phpinfo();的测试如下了以信息:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
说明ZendOptimizer.dll加载成功
在执行test.php时,3次统计时间如下:
2420.6
2414.9
2408.7
-----------------------------------------------
按理在php中加载了ZendOptimizer.dll后,会使php的执行效率会提高40%-100%,
怎么我的加载之后不但没有使效率提高反面下降了呢?
请各位帮忙分析一下,错在那里.
[解决办法]