一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP類中Static方法效率測試代碼

類的定義如下:
復制代碼 代碼如下:
class test
{
public static function a(){}
public function b(){}
}
$obj = new test;

比較以下幾種情況
test::a();
$obj->a();
$obj->b();
測試代碼:
復制代碼 代碼如下:
$obj = new test;
$test_times = 100;
$times = 10000;
$effi1 = array();
$effi2 = array();

while ($test_times-- > 0)
{
$time1 = microtime(true);
for($i=0; $i<$times; $i++)
{
test::a();
}
$time2 = microtime(true);
for($i=0; $i<$times; $i++)
{
$obj->a();
}
$time3 = microtime(true);
for($i=0; $i<$times; $i++)
{
$obj->b();
}
$time4 = microtime(true);
$effi1[] = ($time3 - $time2) / ($time2 - $time1);
$effi2[] = ($time4 - $time3) / ($time3 - $time2);
}
echo avg($effi1),"/n",avg($effi2);

最后的avg是自定義的計算平均數的一個函數:
復制代碼 代碼如下:
function avg($arr)
{
$result = 0;
foreach ($arr as $val)
{
$result += $val;
}
$result /= count($arr);
return $result;
}

程序輸出結果:
復制代碼 代碼如下:
php 5.2.14
view sourceprint?1 0.76490628848091
2 1.0699484376399
view sourceprint?1 php 5.3
view sourceprint?1 0.56919482299058<BR>1.1016495598611

重復執行N(N>10)次,都與這個結果相差不大,說明:
1、直接通過類名訪問靜態方法的效率是通過實例訪問靜態方法的76%,甚至用php5.3時只有56%
2、通過實例訪問靜態方法的效率是訪問非靜態成員方法效率的106,在5.3版本變成110%
3、假設php從5.2升級到5.3時通過類名訪問靜態方法的效率沒有降低,那么通過實例訪問函數的效率至少提高了35%。我沒看過php源碼,有研究過php源碼的朋友希望能告訴我這個假設是否成立 (我想應該是成立的)
說明:以上測試基于windows 7和php.exe,5.2.14使用了apache2.2測試結果沒有區別,考慮到php.exe和通過web訪問所執行的php核心是一樣的,所以5.3懶得改服務器配置了,結果應該一樣。

php技術PHP類中Static方法效率測試代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产午夜精品福利久久 | 国产成人精品视频播放 | 亚洲欧美日韩国产一区二区精品 | 成年ssswww中国女人 | 久久久99精品免费观看 | 最近中文字幕无吗免费高清 | 337p欧美超大胆日本人术艺术 | 国产成+人+亚洲+欧美+日韩 | 伊人网视频 | 国产日韩一区二区三区在线播放 | 日日摸夜夜添夜夜添毛片 | 精品国产自在现线看久久 | 国产中文字幕一区 | 久久久夜间小视频 | 亚洲综合色婷婷在线观看 | 六月婷婷精品视频在线观看 | 四虎精品影院4hutv四虎 | 婷婷综合激情 | 久久精视频 | 久久怡红院亚欧成人影院 | 午夜黄色 | 91精品久久一区二区三区 | 毛片一 | 综合天天| 亚洲成综合人影院在院播放 | 国产一区中文字幕 | 中文字幕久热精品视频免费 | 伊人狼人久久 | 91综合久久 | 色无极影院亚洲 | 精品精品精品 | 男女毛片免费视频看 | 久久99国产精品亚洲 | 一区二三区国产 | 一区二区三区亚洲视频 | 日韩欧美一二区 | 色资源二区在线视频 | 国产精品天天影视久久综合网 | 亚洲欧美自拍一区 | 高清欧美在线三级视频 | 精品久久久久香蕉网 |